Задание Anacron жалуется, “GTK-ПРЕДУПРЕЖДАЯ **: не может открыть дисплей”

/sbin/ifconfig eth0 | grep Mask | cut -d":" -f4
2
21.01.2011, 02:48
4 ответа

Это, вероятно, просто работает без $DISPLAY переменная среды. Если Вы echo $DISPLAY в Вашей оболочке Вы видите то, что ее значение (скорее всего, :0.0), и затем можно указать что в crontab файле:

DISPLAY=:0.0 dialog ...
3
27.01.2020, 22:08
  • 1
    И причина, почему это работает без DISPLAY тот (сборник изречений), задания крона, как предполагается, могут работать, даже если никто не зарегистрирован. Доверие кому-то зарегистрированному не является хорошей идеей для чего-то, что должно быть автоматически как резервный сценарий (лучший дизайн должен был бы выполнить резервное копирование, если правильные медиа существуют, и полагайтесь на обычное уведомление об отказе (по электронной почте) для предупреждения пользователя, если правильные медиа не существовали, и резервное копирование не могло бы быть сделано). –  Gilles 'SO- stop being evil' 22.11.2010, 21:45
  • 2
    , я добавил ДИСПЛЕЙ =:0.0 строки вначале, но все еще получил ту же ошибку. И:0.0 правильное значение для моей системы. –  Cory Walker 23.11.2010, 20:30
  • 3
    @Cory: Вам, возможно, также понадобится XAUTHORITY также. Значение по умолчанию, используемое, если переменная сброшена, ~/.Xauthority. Некоторые системы (например, Ubuntu) используют другой файл, и может быть немного трудно узнать. Если это - проблема, см. superuser.com/questions/190801 / … и unix.stackexchange.com/questions/1596 / …. –  Gilles 'SO- stop being evil' 23.11.2010, 21:07
  • 4
    Это не работало на меня, но помещающий - отображаются =:0.0, поскольку аргумент Zenity работал –  hansn 24.08.2016, 11:40

Необходимо использовать crontab пользователя вместо в масштабе всей системы.

Попробуйте crontab-e (открывает crontab пользователя в $EDITOR), или повторите 'свою crontab строку здесь' | crontab -

0
27.01.2020, 22:08
  • 1
    Кроме того, вместо, 'если blah-bla-bla', можно использовать что-то как: zenity - вопрос - текст "Вы хотите скопировать? Обязательно включите жесткий диск". || выходят 1 –   29.11.2010, 08:45
  • 2
    Этот поток о anacron, не крон..., таким образом, я думаю, anacron способ определить определенную для пользователя установку должен использоваться. –  Alex 01.08.2014, 10:14
  • 3
    Предупреждение: echo 'your crontab line here' | crontab - заменит все Ваши crontab задания просто этой строкой. Использовать { crontab -l | grep -v "somekeyword" ; echo "my new crontab line # somekeyword" } | crontab добавить/обновить одну строку, не вызывая дубликаты. –  Stéphane Gourichon 01.09.2014, 10:29

работы для меня с ДИСПЛЕЕМ =:0.0, но у меня есть всего один пользователь в системе, таким образом, я указываю того пользователя в/etc/crontab

0
27.01.2020, 22:08

Вы можете определить пользовательский anacrontab:

sudo anacron -t ${HOME}/.anacron/anacrontab -S ${HOME}/.anacron/spool

-t = Использовать указанный anacrontab, а не по умолчанию

-S = Использовать указанный спулдир для хранить отметки времени, эта опция требуется для пользователей, которые хотят запустить anacron самостоятельно.

Добавьте команду в свой ~ / .profile для выполнения при входе в систему.

Разрешите запускать sudo anacron без пароля, добавив следующую строку в / etc / sudoers:

user    ALL=(ALL:ALL) NOPASSWD: /usr/sbin/anacron

(замените user на свое имя пользователя)

Например, $ DISPLAY и $ XAUTHORITY пользователя должны быть установлены.

0
27.01.2020, 22:08

Теги

Похожие вопросы