Автоматическое выключение, перезагрузка, приостановка работы и перевод системы Linux в спящий режим в определенное время
Мы уже узнали, как автоматически выводить вашу систему Linux из спящего режима или режима гибернации. Это было весьма полезно, если вы не хотите, чтобы ваша система работала весь день. Вы можете просто перевести его в спящий режим и автоматически разбудить в определенное время. Сегодня мы обсудим еще одну подобную тему, в которой описывается, как автоматически выключать, приостанавливать и переводить в спящий режим вашу систему Linux в определенное время. Мы можем сделать это двумя разными способами. Мы покажем им обоим.
Автоматическое выключение, перезагрузка, приостановка работы и перевод системы Linux в спящий режим в определенное время
Я протестировал это руководство на рабочем столе Ubuntu 16.04. Однако этот метод, вероятно, будет работать и в других дистрибутивах Linux.
Способ 1 — использование Autopoweroff
Autopoweroff – это простая, но полезная утилита, которая используется для выключения, перезагрузки, приостановки работы, перевода в спящий режим вашего компьютера с Linux или запуска любой пользовательской команды, предоставленной пользователем в определенное время. Плюс Autopoweroff в том, что он выключает систему только при выполнении определенных условий. Если к системе, которую мы намеревались выключить, обращается/использует другая система, утилита Autopoweroff не выключит ее. Допустим, вы установили время выключения в 12:00, но некоторые другие системы в вашей сети все еще получают к нему доступ после 12:00, тогда он не выключится. Он будет ждать, пока другие системы завершат свою работу, и отключится только в том случае, если ни один другой компьютер в сети не отвечает на ping. Звучит довольно полезно, не так ли?
Ваша система выключится, приостановится или перейдет в спящий режим при выполнении следующих условий:
- Все хосты, от которых зависит компьютер, больше не отвечают на ping.
- В течение некоторого времени на компьютере не обнаруживалась активность клавиатуры или мыши.
- И конечно пользователь не отключил Autopoweroff.
Autompoweroff должен работать в любой современной операционной системе Linux, он бесплатен и имеет открытый исходный код. Таким образом, каждый может выполнить форк, улучшить код или добавить любые дополнительные функции, которые пожелает.
Загрузите последнюю версию установочного файла Autopoweroff для вашего дистрибутива. В настоящее время он доступен в виде пакетов .deb и .rpm .
Я использую Ubuntu, поэтому скачал файл .deb.
wget https://github.com/deragon/autopoweroff/releases/download/3.0.0/autopoweroff-3.0.0-1.noarch.deb
Затем установите его с помощью команд:
sudo dpkg -i autopoweroff-3.0.0-1.noarch.deb
sudo apt-get install -f
Конфигурация
После установки откройте инструмент настройки графического интерфейса или файл /etc/autopoweroff.conf и отредактируйте его в соответствии со своими потребностями.
Здесь давайте воспользуемся методом графического интерфейса. Откройте инструмент настройки графического интерфейса Autopoweroff либо из меню, либо из панели Unity.
Вот так выглядит окно настройки Autopoweroff.
Как вы можете видеть на скриншоте выше, утилита Autopoweroff состоит из двух разделов: Состояние и команды и Конфигурация. В разделе «Состояние и команды» вы можете включить или отключить такие параметры, как автоматическое выключение, приостановка, перезагрузка и переход в спящий режим.
В разделе «Конфигурация» вы можете установить время для выполнения определенного действия в определенное время.
Раздел конфигурации разделен на три столбца. В первом столбце вы можете определить настройки периода и таймаутов.
- Начальный час – начальный час интервала отсутствия действий. Autopoweroff выполнит такие действия, как выключение, приостановка, перезагрузка, переход в спящий режим или другие, только за пределами интервала (час начала, час окончания).
- Час окончания – час окончания интервала отсутствия действий. Autopoweroff выполнит такие действия, как выключение, приостановка, перезагрузка, переход в спящий режим или другие, только за пределами интервала (час начала, час окончания).
- Время простоя. Это время, необходимое Autopoweroff для ожидания бездействующего пользователя в интерактивном режиме (клавиатура, мышь, джойстик... и т. д.), прежде чем переходить к каким-либо действиям. Таким образом, если Autopoweroff окажется за пределами интервала «бездействия», действие все равно не будет выполнено, пока на компьютере присутствует активность пользователя + задержка «время простоя».
- Задержка загрузки. Это минимальная задержка, которую Autopoweroff должен ожидать перед выполнением какого-либо действия, если Autopoweroff был запущен во время интервала выключения. Это предотвращает случайное завершение работы, если Autopoweroff был неожиданно запущен; это дает пользователям время отключить Autopoweroff.
Во втором столбце вы можете добавлять, удалять или редактировать зависимые системы, указав их имя хоста или IP-адрес. В третьем столбце вы можете выбрать действия, которые необходимо выполнить в определенное время. Ваша система выключится, перейдет в спящий режим, перейдет в спящий режим или выполнит любую пользовательскую команду на основе входных данных, которые вы указали в разделе «Конфигурация». В этом разделе нужно быть осторожным. Любые неправильно настроенные параметры могут привести к потере данных или нежелательному/неожиданному завершению работы или перезагрузке.
После внесения изменений нажмите Сохранить, чтобы применить изменения. Вы можете отменить изменения, нажав кнопку Отменить. Чтобы закрыть эту утилиту, просто нажмите кнопку Выход.
Более подробную информацию можно найти на странице Autopoweroff на GitHub.
Способ 2 — использование qshutdown
qshutdown — это еще одна утилита для автоматического выключения, перезагрузки, приостановки работы и перевода системы в спящий режим в определенное время. Он хорошо работает в Ubuntu, Linux Mint и других вариантах Ubuntu, таких как Kubuntu, Xubuntu, Lubuntu и т. д.
Чтобы установить его в Ubuntu и его производных, выполните следующие команды одна за другой в своем терминале:
sudo add-apt-repository ppa:hakaishi/qshutdown
sudo apt update
sudo apt install qshutdown
После установки запустите его либо из панели управления Unity, либо из меню.
Вот как выглядит интерфейс qshutdown на моем рабочем столе Ubuntu 16.04 LTS.
Как вы можете видеть на скриншоте выше, у qshutdown не так уж много опций. Там всего несколько настроек. Если вы хотите выполнить какое-либо действие (выключение/перезагрузку/приостановку/гибернацию) в вашей системе через 60 минут, просто выберите параметр "Минуты до завершения работы" и введите время. Затем нажмите ОК.
Как только вы нажмете кнопку «ОК», начнется обратный отсчет времени, и выбранное действие будет выполнено в точное время.
Если вы хотите, чтобы предупреждения отображались до выполнения выбранного действия, установите флажок «Предупреждения включены».
Чтобы запланировать свое действие на определенное время, выберите «Время выключения» и введите точное время для выполнения выбранного действия.
Как вы видите на скриншоте выше, я хочу, чтобы моя система выключилась в 16:40. Вы можете выбрать любое другое действие по вашему выбору.
Еще одна хорошая вещь — мы можем планировать действия на неделю. Для этого нажмите «Календарь» и выберите «Еженедельно». Там вы можете выбрать действие, которое хотите выполнить в определенный день недели.
Программа qshutdown – очень простая, но при этом полностью функциональная и полезная утилита. В отличие от Autopoweroff, qshutdown выключит, приостановит и переведет вашу систему в спящий режим, как только достигнет крайнего срока, даже если одна из других ваших систем обращается к ней. Поэтому вы должны быть очень осторожны при выполнении любой удаленной работы.
Дополнительную информацию см. на странице панели запуска qshutdown.