Если я наберу
sudo shutdown -h 21:30
, скажем, в 21:20, то я получу сообщение, говорящее
Shutdown scheduled for Tue 2020-05-26 21:30:00 BST, use 'shutdown -c' to cancel.
Это здорово. Но есть ли способ запланировать отключение на каждый день на 21:30 без необходимости вводить sudo shutdown -h 21:30
каждый день?
Информация о моем машина (в случае необходимости):
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.04.4 LTS
Release: 18.04
Codename: bionic
cron
cron
- утилита общего назначения (поставляется с Ubuntu) для планирования запуска любой команды по вашему выбору через определенные промежутки времени. Cron
конфигурируется и управляется через crontab
. Понимание того, как использовать `crontab, займет некоторое время. Прежде чем мы продолжим, см. https://help.ubuntu.com/community/CronHowto , чтобы узнать, как использовать crontab.
crontoab
, чтобы запланировать shutdow
. ] Каждую ночь в 21:30 Мы хотим запустить скрипт с правами администратора. Поэтому мы используем sudo
до crontab
. Откройте терминал, нажав Ctrl + Alt + T и введите :
sudo crontab -e
Эта команда откроет файл crontab для пользователя root, если таковой существует, или создаст новый пустой файл. Добавьте следующую строку в конец файла:
30 21 * * * /sbin/shutdown -h
Каждая строка в crontab
имеет пять полей времени и даты, за которыми следует команда, за которой следует символ новой строки ('\ n'). Поля разделены пробелами. Пять полей даты и времени не могут содержать пробелы. Пять полей даты и времени:
Следовательно, 30 21 * * *
означает в 21:30 каждый день.
Если вы используете nano
в качестве редактора текстовых файлов (по умолчанию), выйдите из редактора, нажав Ctrl + X . Редактор предложит вам сохранить изменения. Нажмите Y , а затем нажмите . Введите , чтобы выбрать имя файла по умолчанию.
Обратите внимание, что нам нужно указать путь к программе, которую мы вызываем через cron, в данном случае shutdown
. Во-вторых, нам не нужно указывать время в качестве аргумента для команды shutdown
, поскольку команда будет выполняться в это время каждый день с помощью cron
.
Подобные вопросы задавались и отвечались ранее:
Как я могу выключать систему каждый день в определенное время
Какие таймеры выключения с / без GUI доступны?
Надеюсь, это поможет