當從根目錄使用“gsettings set org.gnome.desktop.background picture-uri file_path”時不起作用

當從根目錄使用“gsettings set org.gnome.desktop.background picture-uri file_path”時不起作用

gsettings set org.gnome.desktop.background picture-uri file_path從 root 使用時不起作用,但從另一個用戶運行時它可以工作。

即使我把它放在 crontab -u Anotheruser -e 中。但不工作

我的作業系統:ubuntu 16.04 LTS

我一路嘗試但沒有成功。

例 :

su - USER -c "command" 
# or ways sudo and su
crontab -u USER -e
DISPLAY=:1 ...
DISPLAY=:0 ...
DISPLAY=:0.0 ...
dbus-launch ...
PID=$(pgrep gnome-session)
export DBUS_SESSION_BUS_ADDRESS= ...

請幫我!謝謝

答案1

我找到了解決方案

export DBUS_SESSION_BUS_ADDRESS=$(pgrep -a dbus-daemon -U USERNAME | grep -o 'unix:abstract.*$')
gsettings set org.gnome.desktop.background picture-uri FILE_ADDRESS

並進入 crontab :

@reboot su USERNAME -c 'export DBUS_SESSION_BUS_ADDRESS=$(pgrep -a dbus-daemon -U USERNAME | grep -o "unix:abstract.*$");export DISPLAY=:0;gsettings set org.gnome.desktop.background picture-uri FILE_ADDRESS'

只需替換USERNAME為您的用戶並替換FILE_ADDRESS為您的圖片地址

相關內容