gsettings更改无法通过ssh工作

问题描述:

我正在尝试使用gsettings ssh设置idle timeoutUbuntu 14.04gsettings更改无法通过ssh工作

我使用的命令都是这样

dbus-launch gsettings set org.gnome.desktop.session idle-delay 600

dbus-launch gsettings set org.gnome.desktop.screensaver lock-delay 0

dbus-launch gsettings set org.gnome.desktop.screensaver lock-enabled true

dbus-launch gsettings set org.gnome.desktop.screensaver idle-activation-enabled true

的命令与各种timeout周期的变化正在发生执行后,但是在重新启动或注销后超时更改将丢失。

是否有可能使超时更改在重启/注销时保持不变。

基本上,当您使用​​启动新的dbus实例时,您将通过启动新的dbus将配置保存到错误的位置。在将​​添加到gsettings开头时,会删除所有错误消息,但不会保存更改。

目标用户存在一个现有的dbus进程,通过ssh,您的终端没有收到正确的环境变量来解决它。

通过ssh编辑gsettings的正确方法是首先确定现有dbus进程的DBUS_SESSION_BUS_ADDRESS并将其设置为环境变量。因此:

PID=$(pgrep gnome-session) 
export DBUS_SESSION_BUS_ADDRESS=$(grep -z DBUS_SESSION_BUS_ADDRESS /proc/$PID/environ) 
# And now: 
gsettings set org.gnome.desktop.session idle-delay 600