Как сделать так, чтобы ваш Linux-компьютер автоматически выходил из спящего режима
Хотите перевести свой ПК с Linux в спящий режим или в режим гибернации, чтобы он автоматически включался в определенное время? Вы можете легко сделать это с помощью команды rtcwake, включенной по умолчанию в большинство систем Linux.
Это может быть полезно, если вы хотите, чтобы ваш компьютер что-то делал в определенное время, но не хотите, чтобы он работал 24/7. Например, вы можете перевести ваш компьютер в ночное время и дать ему проснуться, прежде чем выполнять некоторые загрузки..
Использование rtcwake
rtcwake Команде требуются права суперпользователя, поэтому она должна выполняться с Судо в Ubuntu и других дистрибутивах, производных от Ubuntu. В дистрибутивах Linux, которые не используют sudo, вам нужно будет войти в систему как пользователь root с су командовать первым.
Вот основной синтаксис команды:
sudo rtcwake -m [тип приостановки] -s [количество секунд]
Например, следующая команда приостанавливает работу вашей системы на диске (переводит ее в спящий режим) и пробуждает через 60 секунд:
sudo rtcwake -m диск -s 60
Типы приостановки
-м Коммутатор принимает следующие типы приостановки:
- ожидание - Режим ожидания обеспечивает небольшую экономию энергии, но восстановление работающей системы происходит очень быстро. Это режим по умолчанию, если вы опустите ключ -m.
- мем - Приостановить в ОЗУ. Это обеспечивает значительную экономию энергии - все находится в состоянии низкого энергопотребления, кроме вашей оперативной памяти. Содержимое вашей памяти сохраняется.
- диск - Приостановить на диск. Содержимое вашей памяти записывается на диск, и ваш компьютер выключается. Компьютер включится и его состояние будет восстановлено после завершения таймера.
- от - Выключите компьютер полностью. Справочная страница rtcwake отмечает, что восстановление из «off» официально не поддерживается спецификацией ACPI, но в любом случае это работает на многих компьютерах.
- нет - Не выключайте компьютер немедленно, просто установите время пробуждения. Например, вы можете попросить свой компьютер проснуться в 6 утра. После этого можете положить его спать вручную в 11:00 или 1:00 - в любом случае, он проснется в 6:00..
Секунды против определенного времени
-s опция займет несколько секунд в будущем. Например, -s 60 разбудит компьютер за 60 секунд, а -s 3600 разбудит компьютер за час.
-T Опция позволяет вам разбудить компьютер в определенное время. Этому переключателю требуется несколько секунд с начала эпохи Unix (00:00:00 UTC 1 января 1970 года). Чтобы легко указать правильное количество секунд, объедините Дата команда с помощью команды rtcwake.
-L Переключатель сообщает rtcwake, что аппаратные часы настроены на местное время, а -U Переключатель сообщает rtcwake, что аппаратные часы (в BIOS вашего компьютера) установлены на время UTC. Дистрибутивы Linux часто устанавливают ваши аппаратные часы на время UTC и переводят их в ваше местное время.
Например, чтобы компьютер проснулся завтра в 6:30 утра, но не остановился сразу (при условии, что ваши аппаратные часы настроены на местное время), выполните следующую команду:
sudo rtcwake -m no -l -t $ (дата +% s -d 'завтра 06:30')
Больше советов
Используйте оператор && для запуска определенной команды после того, как rtcwake выведет вашу систему из спящего режима. Например, следующая команда приостанавливает ваш компьютер в ОЗУ, пробуждает его через две минуты и затем запускает Firefox:
rtcwake -m mem -s 120 && firefox
Интегрируйте команду rtcwake в скрипт cron для автоматического пробуждения вашего компьютера в определенное время. -м нет Переключатель также может быть полезен в скрипте cron. Например, вы можете запустить rtcwake -m no -s 28800 Команда в cron сценарии в 10 вечера каждый день. Это заставит ваш компьютер проснуться за 28800 секунд в 6:00 утра. Тем не менее, ваш компьютер не сразу перейдет в спящий режим - вы можете перевести его в режим сна в 11 вечера или 1 час ночи, и он все равно будет работать в 6 часов утра в обычном режиме..
Предостережения
- RTC обозначает часы реального времени. rtcwake использует аппаратные часы вашего компьютера, которые вы можете установить в BIOS, чтобы определить, когда ваш компьютер проснется. Если вы используете старый компьютер с умирающей батареей CMOS, которая не может нормально работать, это не сработает.
- Если режим сна, приостановка в ОЗУ или спящий режим не работают должным образом с вашей системой Linux - возможно, из-за того, что в Linux нет драйверов для их правильной работы с вашим оборудованием - это может не сработать.
- Будьте внимательны при настройке ноутбука на автоматическое включение в определенное время. Вы не хотели бы, чтобы он просыпался, работал, перегревался или разряжался в сумке для ноутбука.