Укажите ZENITY на CRONTAB: как

Я использую Xubuntu 16.04 (lts)

И моей первоначальной проблемой было:

  1. , как настроить работу crontab, которая выключает компьютер каждые 30 минут;
  2. как установить графическое предупреждение пользователю о том, что компьютер выключится;

Для 1-й проблемы (выключение через 30 минут) решение было простым - я искал спросить Ubuntu и другие на форумах по Ubuntu и нашел несколько хороших постов, в основном один ниже: Как автоматически перезапускать каждые 30 минут?

После прочтения этого поста и других я понял, что существуют разные варианты установки crontab job:

  • cronjob для всей системы, расположенный в / etc / crontab
  • cronjob пользователя (ей), доступ к которому можно получить в терминале BY crontab -e (crontab -e отличается из sudo crontab -e, который является корневым crontab)

Таким образом, с учетом этого мой начальный вывод CRONTAB (с использованием crontab, расположенного в / etc / crontab) был

* / 30 * * * * root shutdown -r +2

Этот вывод говорит о том, что компьютер будет выключаться (команда: shutdown) и перезагружаться (-r) каждые 30 минут +2 минуты, с предупреждением TRANSMITED только на терминал (если терминал / с стелька открыта).

Обратите внимание, что это решение моей первой проблемы сработало, но иногда, как указано в ссылке выше ( https://askubuntu.com/questions/243546 .. .) Мы должны использовать другой вывод

* / 30 * * * * root / sbin / shutdown -r +2

, например, вышеприведенный вывод работает на другом компьютере, который запускает элементарный os freya 0.3.2. (на основе Ubuntu 14.04 LTS), но не будет работать на моем компьютере Xubuntu 16.04.

Итак, я был счастлив :-) пришло время заняться второй проблемой:

«как установить графическое предупреждение пользователю, что компьютер выключится»

и это было нелегко решить ... я понял из своих поисков, что мне нужно какое-то приложение, которое выводит диалоги на экран. я читал об уведомлении-отправке и о ZENITY - я тестировал оба, но я хотел получить БОЛЬШОЕ уведомление на экране, поэтому я выбрал ZENITY - можно сделать простой тест: откройте терминал и вставьте этот

zenity --warning --text = "CRISTIANO RONALDO - ЛУЧШИЙ"

После этого мне понадобилось что-то, чтобы выполнить это предупреждение в crontab - я создал простой скрипт (мой первый :-)), назвал его aviso.sh и сохранил его в моем домашнем каталоге: / home / paulo /

#! / bin / bash

zenity --warning --text = "O computador vai desligar-se dentro de 2 minutos. Pf guarde os seus documentmentos. Obrigado "

после того, как я дал ему необходимые разрешения: chmod a + x /home/paulo/aviso.sh

и ПРОБЛЕМЫ начались ... я не мог получить предупреждение с графическим интерфейсом, несмотря на то, что в терминале мой скрипт работал нормально ...

Я читаю, читаю, делаю тесты, тесты и ничего, поэтому я решил опубликовать в askubuntu вопрос о помощи / инструкциях.

Мой начальный пост был помечен как дубликат, и мне дали еще один пост следите, НО этот пост не сработал, но с его помощью - Дэвида Фёрстера - меня указали в правильном направлении

Так что же сработало? вот результат:

* / 30 * * * * DISPLAY =: 0 /home/paulo/aviso.sh

мои начальные тесты (НЕ РАБОТАЮЩИЕ) приводят к чему-то вроде этого: 20 20 * * * export NO_AT_BRIDGE = 1 && /home/paulo/aviso.sh

Итак, я узнал, что: - если DISPLAY =: 0 не присутствует в ваших выходных данных, сообщение с графическим интерфейсом, вероятно, не появится на вашем экране; - вы также должны указать полный путь: / home / username / name файла script.sh - вы можете получить доступ к пользователю crontab, набрав crontab -e в терминале / консоли - я использовал crontab -e для установки графического сообщения и использовал общесистемный crontab / etc / crontab для определения выключения машины - в моем случае, использование и определение «xhost local: paulo», не помогло и ни настройка «export NO_AT_BRIDGE = 1» - что сработало: - Элемент списка

1- доступ к crontab -e в терминале / консоли

1.1. * / 30 * * * * DISPLAY =: 0 /home/paulo/aviso.sh

2 - доступ к общему системному crontab sudo gedit / etc / crontab

2.1 , * / 30 * * * * root shutdown -r +2

Если вы зайдете в crontab -e, вам будет предложено выбрать между различными текстовыми редакторами; я выбрал NANO; после вставки / записи текста вам нужно использовать control + x для сохранения текста и нажать ввод.

1137 Вот так. Благодарю. Решено.

0
задан 14 April 2017 в 01:23

0 ответов

Другие вопросы по тегам:

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