Как полностью отключить режим ожидания/гибернации в Ubuntu 24.04 | 22.04
В этом руководстве показано, как полностью отключить функцию приостановки и/или спящего режима, чтобы ваш компьютер Linux никогда не переходил в спящий режим.
Linux может автоматически переходить в спящий режим, когда система простаивает или крышка ноутбука закрыта, хотя пользователь может отключить это поведение с помощью графических параметров или файла конфигурации logind.conf
.
Но если вы никогда не хотите переводить свой компьютер в спящий режим, например, из-за сервера, вы можете полностью отключить эту функцию. Таким образом, даже опция приостановки в меню выключения или соответствующая команда Linux не будут работать!
Настройте Systemd для полного отключения режима сна системы
В современных дистрибутивах Linux (например, Ubuntu, Debian, Fedora, Arch и openSUSE) функции приостановки, гибернации и другие функции сна управляются systemd.
Systemd включает в себя следующие 4 службы, которые выполняют действия, когда пользователь или система пытаются заснуть:
systemd-suspend.service
systemd-suspend-then-hibernate.service
systemd-hibernate.service
systemd-hybrid-sleep.service
Отключение (маскировка) вышеперечисленных служб не остановит действия, а нарушит процесс сна. В моем случае, после маскировки службы приостановки в Ubuntu, он все равно может приостановить мой ноутбук, хотя через несколько секунд он автоматически просыпается.
Правильный способ — настроить systemd-sleep.conf
и написать правила, которые сообщат systemd отключить эти функции.
1. Сначала откройте терминал (Ctrl+Alt+T) или подключитесь к серверу Linux, затем выполните команду для редактирования файла конфигурации сна systemd:
sudo nano /etc/systemd/sleep.conf
Здесь я использую текстовый редактор командной строки nano
, который работает как на настольном компьютере, так и на сервере. Вы можете заменить его на gedit
для Ubuntu 22.04 и более ранних версий, gnome-text-editor
для 24.04 и других Linux с последней версией GNOME, коврик для мыши
для XFCE. или другой текстовый редактор, в зависимости от вашего рабочего стола.
2. Когда файл откроется, прокрутите вниз и установите следующие правила в разделе [Сон]:
AllowSuspend=no
AllowHibernation=no
AllowSuspendThenHibernate=no
AllowHybridSleep=no
Удалите «#» в начале строк выше, если они существуют, и установите значение no или просто добавьте их вручную. По завершении нажмите Ctrl+S, чтобы сохранить изменения, и Ctrl+X, чтобы выйти.
3. После сохранения файла опция «Приостановить» сразу исчезла из верхнего правого меню выключения в моей Ubuntu 24.04.
И команда systemctl suspend
отказалась работать и сказала: «Вызов приостановки не выполнен: команда сна «приостановить» отключена в конфигурации».
ПРИМЕЧАНИЕ. Systemd также читает конфигурации из файлов .conf
в каталоге /etc/systemd/sleep.conf.d
. Это означает, что вы можете запустить вместо этого используйте команду ниже, чтобы создать собственный файл конфигурации:
sudo nano /etc/systemd/sleep.conf.d/disable-sleep.conf
Затем добавьте в файл приведенные ниже строки, чтобы либо выполнить ту же работу, либо даже переопределить предыдущие правила на шаге 2.
[Sleep]
AllowSuspend=no
AllowHibernation=no
AllowHybridSleep=no
AllowSuspendThenHibernate=no
Повторно включите режим ожидания/гибернации.
Чтобы снова включить функции, либо перенастройте файл /etc/systemd/sleep.conf
и закомментируйте (добавьте # в начале) 4 строки.
Или просто удалите добавленный файл, например «disable-sleep.conf», в каталоге /etc/systemd/sleep.conf.d
.
sudo rm /etc/systemd/sleep.conf.d/disable-sleep.conf