Невозможно запустить скрипт.sh для задачи cron. Изменение фонового изображения
Я пробовал несколько подходов к решению этой проблемы, но все, что я хочу сделать, это изменить обои рабочего стола, когда этот скрипт запускается в cron. Ниже то, что я имею до сих пор.
PID=$(pgrep gnome-session)
export DBUS_SESSION_BUS_ADDRESS=$(grep -z DBUS_SESSION_BUS_ADDRESS /proc/$PID/environ|cut -d= -f2-)
sudo gsettings set org.gnome.desktop.background picture-uri file:///home/mark/Pictures/Background_Pictures/CAP.jpg
Я получаю следующую ошибку при запуске в cron.
(process:17154): dconf-WARNING **: failed to commit changes to dconf: Cannot autolaunch D-Bus without X11 $DISPLAY
Я знаю, что часть проблемы заключается в том, что мне нужно установить DBUS_SESSION_BUS_ADDRESS
переменная, но у меня есть, и, кажется, имеет действительное значение.
Я в растерянности, как это сделать. У кого-нибудь есть правильное решение для этого?
1 ответ
Решение
Нашел решение. Я использовал следующий скрипт.
PID=$(pgrep gnome-session)
export DBUS_SESSION_BUS_ADDRESS=$(grep -z DBUS_SESSION_BUS_ADDRESS /proc/$PID/environ|cut -d= -f2-)
gsettings set org.gnome.desktop.background picture-uri "file:///home/mark/Pictures/Wallpapers/CAP.jpg"
Однако проблема была в моем файле cron. Я использовал линию
***** root sh /home/mark/scripts/desktop.sh
когда это должно было быть
***** mark sh /home/mark/scripts/desktop.sh
Когда я запустил скрипт в cron со своими собственными привилегиями, я смог успешно запустить скрипт в cron.