Intereting Posts
Застрял на 0% Звуковой драйвер испорчен, а микрофон работает неправильно ubuntu 12 Восстановление неисправного диска Я не могу войти в Ubuntu на Virtualbox Можно ли создать двойной загрузочный USB-накопитель с Windows 7 и Ubuntu? узнать, какой метод кодирования используется gedit для открытия текстового файла? Системный монитор (панель) показывает неправильное количество используемого плунжера Как заставить датчик окружающего света работать на Asus Zenbook UX303? Такая же папка и имя файла в том же месте Отключить «Доступна новая версия Sublime Text, скачать сейчас?» В Sublime 3 (стабильный канал) Как создать пользовательский образ RHEL для Ubuntu MAAS? Невозможно подключиться к Интернету на виртуальной машине (включены только сети NAT и Host) Xorg: Количество созданных экранов не соответствует количеству обнаруженных устройств Не удается загрузить с Juju из-за «ошибки с сервера: 401 UNAUTHORIZED» Использование «dd» в Vi (удаление нескольких строк) не принимается, если количество строк> длина файла

(Xubuntu) Как установить обои с помощью командной строки?

Я сделал много поисковых запросов, но не смог найти решение моей проблемы.

Я учитель, и я использую Xubuntu на некоторых компьютерах-учениках. У меня все закрыто довольно хорошо, но я не могу понять, как ограничить пользователей изменением обоев, не выходя из всей машины в режиме киоска. Меня не волнует, если они меняют его во время рабочей сессии, но я хотел бы создать crontab, который сбрасывается обратно к исходному .png при перезагрузке.

Я надеюсь на простую запись cron, но я готов ослабить мир сценариев оболочки, если это то, что нужно.

Есть идеи?

На земле Xfce это

xfconf-query --channel xfce4-desktop --property /backdrop/screen0/monitor0/image-path --set /usr/share/backgrounds/xfce/xfce-blue.jpg 

(Конечно, замените путь к файлу, который вы хотите).

 xfconf-query --channel xfce4-desktop --list 

перечисляет все связанные свойства, в случае, если screen0 / monitor0 не тот.

Для xfce4 в Xubuntu 14.04 используйте свойство / backdrop / screen0 / monitorDisplayPort-1 / workspace0 / last-image вместо / backdrop / screen0 / monitor0 / image-path

Вам также необходимо установить переменную среды DBUS_SESSION_BUS_ADDRESS следующим образом:

 PID=$(pgrep xfce4-session) export DBUS_SESSION_BUS_ADDRESS=$(grep -z DBUS_SESSION_BUS_ADDRESS /proc/$PID/environ|cut -d= -f2-) 

В моем случае я хотел повернуть обои (случайное изображение из выбранной папки) один раз в день, но я включил свой компьютер нерегулярно, поэтому решил его, запустив скрипт из cron каждые полчаса, но вступая в действие только один раз день.

запись в crontab (добавьте его через команду crontab -e ):

 0,30 * * * * /home/lucifer/scripts/rotate-wallpaper.sh 

rotate-wallpaper.sh:

 #!/bin/bash wallpaperdir="/home/lucifer/Pictures/wallpapers" datefile="/home/lucifer/.wallsw" thisday=$( date +%j ) wallfiles=($wallpaperdir/*) randompic=`printf "%s\n" "${wallfiles[RANDOM % ${#wallfiles[@]}]}"` PID=$(pgrep xfce4-session) export DBUS_SESSION_BUS_ADDRESS=$(grep -z DBUS_SESSION_BUS_ADDRESS /proc/$PID/environ|cut -d= -f2-) if [ -f "$datefile" ] then lastday=$( cat "$datefile" ) if [ "$lastday" != "$thisday" ] then date +%j > "$datefile" xfconf-query -c xfce4-desktop -p /backdrop/screen0/monitorDisplayPort-1/workspace0/last-image --set $randompic fi else date +%j > "$datefile" xfconf-query -c xfce4-desktop -p /backdrop/screen0/monitorDisplayPort-1/workspace0/last-image --set $randompic fi 

Примечание. Если вы используете языковой стандарт, отличный от английского, свойство может иметь другое имя. Лучший способ узнать имя свойства, открыть окно терминала и запустить эту команду:

 xfconf-query -c xfce4-desktop -m 

Это включит мониторинг свойств xfce4-desktop. Теперь измените свой фон вручную. Вы должны увидеть имя свойства, на которое повлияло это изменение в окне терминала. Используйте это имя свойства, если оно отличается от / backdrop / screen0 / monitorDisplayPort-1 / workspace0 / last-image

Пытаться

 gsettings set org.gnome.desktop.background picture-uri file:///your/picture/location.jpg 

Требуется file:// .

Не используйте cron. Вместо этого используйте сценарий запуска. Хотя вы можете использовать cron, но я не предпочитаю его в этой ситуации, потому что он специфичен для пользователя.

Сделайте это так:

 sudo vi /etc/rc.local 

добавьте следующее в конец файла

 sudo -u YOURUSERNAME -g $( id -g YOURUSERNAME ) xfconf-query --channel xfce4-desktop --property /backdrop/screen0/monitor0/image-path --set /usr/share/backgrounds/xfce/xfce-blue.jpg 

и убедитесь, что вы заменили YOURUSERNAME своим текущим пользователем. И замените /usr/share/backgrounds/xfce/xfce-blue.jpg на реальный путь нового фонового изображения и убедитесь, что у вашего пользователя есть разрешение на просмотр изображения