Корневой корень не работает

6

По какой-то причине вкладка root cron не работает.

Попытка перезагрузить устройство каждую ночь в полночь.

В качестве пользователя root должно быть следующее:

crontab -e

Затем добавьте:

0 0 * * * /sbin/shutdown -r now

Когда я проверяю, что некоторые значения закрывают текущее время, ничего не происходит. Я установил NTP и убедился, что часовой пояс правильный. Я также указываю использование 24 часов. Например, чтобы проверить эту строку прямо сейчас (5:35 PM), я пытаюсь ввести следующее:

36 17 * * * /sbin/shutdown -r now

Я проверил время с датой -R. Время запуска crontab приходит и уходит, и система не перезагружается. Что мне здесь не хватает?

Спасибо

    
задан Atomiklan 24.11.2014 в 23:37
источник

3 ответа

8

У меня есть три решения для вас.

  1. Вызов crontab с crontab -e -u root

  2. Убедитесь, что у вас есть пустая строка в конце файла cronjob, что означает, что каждая строка заканчивается новой строкой.

  3. Вам может потребоваться перенаправить вывод на devnull: shutdown -r now > /dev/null

Вот два полезных веб-страницы для cronjobs:

Тестер CRON

Генератор CRON

Вы также можете обрабатывать cronjobs с помощью webmin .

Кроме этого, у вас есть как минимум еще два способа перезапуска компьютера в полночь.

Один из них - запустить команду shutdown как скрипт автоматически при входе в систему, но с конкретным временем как параметр вместо «now»:

shutdown -r 00:00

Однако это приведет к появлению широковещательного сообщения о предстоящем завершении работы при каждом входе в систему (это может быть совсем не плохо). Ну, вы также можете сделать это во время загрузки, добавив скрипт в init.d, все же уступив сообщение.

Другим является использование команды at :

at 0am

Введите команду shutdown -r now и сохраните ее с помощью ctrl + d или выполните скрипт для команды и выполните:

at -f restart_script.sh 0am

Надеемся, что это поможет вам получить желаемый результат.

    
ответ дан Ahti Komu 25.11.2014 в 00:44
источник
0

Задачи System Cron перечислены в файле / etc / crontab. Поэтому редактирование этого файла напрямую поможет вам выполнить команду перезагрузки с правами root.

поэтому

$ sudo vi /etc/crontab

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name  command to be executed
  23 20 *  *  *  root  shutdown  -r  now

убедитесь, что вы проверили файл журнала Cron после редактирования crontab, поскольку он позволит вам узнать, успешно ли установлен cron.

Я тестировал его, и это сработало для меня. Перезагрузка моей системы в 8:23 вечера

УЖАС!!

    
ответ дан rulebreaker4 25.11.2014 в 02:27
-2

36 17 * * * и т. д.

36 17 не является способом указать правильное время в вашем cron.

проверить с помощью команды date, чтобы узнать, работает ли ваша система в США или время в Europ

используйте 17 36, если время в европе и если ваша система использует 24 H время или 5 36, если ваша система использует US TIME и время 12 H

    
ответ дан toto 25.11.2014 в 00:22