Подробный гайд: как отключить сон и гибернацию в ALT Linux
ALT Linux, как и другие дистрибутивы на базе systemd, предоставляет несколько способов управления режимами энергосбережения. Ниже приведены проверенные методы отключения сна и гибернации.
Способ 1: Полное отключение через systemd (рекомендуемый)
Это самый надёжный способ — он блокирует все цели сна на уровне systemd:
sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target
Что делает команда:
mask— создаёт символическую ссылку на/dev/null, делая целевые юниты недоступными для запуска- Блокируются: обычный сон (
suspend), гибернация (hibernate), гибридный сон (hybrid-sleep) и общийsleep.target
Проверка статуса:
systemctl status sleep.target suspend.target hibernate.target
Должно отображаться: Loaded: masked
Восстановление (если потребуется):
sudo systemctl unmask sleep.target suspend.target hibernate.target hybrid-sleep.target
Способ 2: Настройка через /etc/systemd/logind.conf
Позволяет гибко управлять реакцией системы на события питания:
sudo mcedit /etc/systemd/logind.conf
# или sudo nano /etc/systemd/logind.conf
Найдите или добавьте следующие параметры:
[Login]
HandleSuspendKey=ignore
HandleHibernateKey=ignore
HandleLidSwitch=ignore
HandleLidSwitchExternalPower=ignore
HandleLidSwitchDocked=ignore
Значения параметров:
| Параметр | Значение | Описание |
|---|---|---|
HandleSuspendKey |
ignore |
Игнорировать кнопку сна |
HandleHibernateKey |
ignore |
Игнорировать кнопку гибернации |
HandleLidSwitch |
ignore |
Не реагировать на закрытие крышки ноутбука |
Применение изменений:
sudo systemctl restart systemd-logind
Важно:
- перезапуск
systemd-logindзавершит все пользовательские сессии. Лучше выполнить это из консоли (Ctrl+Alt+F2) или черезsudo.
Способ 3: Отключение в графической среде (KDE, MATE, XFCE)
Для KDE (Plasma):
- Откройте «Параметры системы» → «Электропитание»
- Во вкладках «Энергосбережение» и «Действия при закрытии крышки» установите:
- «При простое» → «Ничего не делать»
- «При закрытии крышки» → «Ничего не делать»
3. Уберите галочки с пунктов «Разрешить переход в спящий режим»
Для MATE:
gsettings set org.mate.power-manager sleep-display-ac 0
gsettings set org.mate.power-manager sleep-display-battery 0
gsettings set org.mate.power-manager sleep-computer-ac 'nothing'
gsettings set org.mate.power-manager sleep-computer-battery 'nothing'
Способ 4: Блокировка на уровне ядра (дополнительная защита)
Если требуется гарантировать, что система не уснёт даже при сбоях в пользовательском пространстве:
1. Создайте файл правил udev:
sudo mcedit /etc/udev/rules.d/99-disable-sleep.rules
2. Добавьте строку:
ACTION=="add", SUBSYSTEM=="mem", KERNEL=="mem", ATTR{state}="disabled"
3. Перезагрузите udev:
sudo udevadm control --reload-rules
Проверка: что действительно отключено
# Проверка замаскированных целей
systemctl list-unit-files | grep -E 'sleep|suspend|hibernate'
# Проверка активных таймеров сна
systemctl list-timers | grep -i sleep
# Просмотр логов на попытки перехода в сон
journalctl -b | grep -iE 'suspend|hibernate|sleep'
Особые случаи в ALT Linux
Если используется swap-файл для гибернации:
ALT Linux требует корректной настройки параметров resume= и resume_offset= в загрузчике для работы гибернации. Если вы не планируете использовать гибернацию — убедитесь, что эти параметры отсутствуют в /etc/default/grub, чтобы избежать конфликтов.
Для видеокарт NVIDIA:
Если сон ранее вызывал зависания, перед отключением рекомендуется отключить службы NVIDIA:
sudo systemctl disable nvidia-suspend nvidia-resume nvidia-hibernate
Сводная таблица методов
| Метод | Уровень | Надёжность | Обратимость |
|---|---|---|---|
systemctl mask |
systemd | Высокая | Легко |
logind.conf |
systemd-logind | Высокая | Легко |
| Настройки DE | Пользовательский | Средняя | Очень легко |
| udev-правила | Ядро | Высокая | Требует правки файлов |
Частые проблемы и решения
1. Проблема:
- После отключения сна система всё равно гасит экран
1. Решение:
- Это не сон, а просто отключение дисплея. Настройте:
xset s 0 0 # отключить screensaver
xset -dpms # отключить DPMS (энергосбережение монитора)
2. Проблема:
- Ноутбук всё равно засыпает при закрытии крышки
2. Решение:
- Проверьте, не переопределяет ли настройки окружение рабочего стола.
В KDE дополнительно проверьте:
~/.config/plasma-workspace/env/
3. Проблема:
- После
systemctl maskпоявились ошибки в логах
3. Решение:
- Это нормально: приложения, пытающиеся вызвать сон, получат ошибку. Если это мешает — используйте
logind.confвместоmask.
Рекомендация для серверов ALT Linux:
- на серверах рекомендуется использовать комбинацию
systemctl mask+ настройкуlogind.conf, чтобы исключить любые случайные переходы в сон даже при физическом доступе к машине.
При необходимости восстановить функции — просто выполните unmask и верните исходные значения в конфигурационных файлах. Все изменения в ALT Linux применяются без переустановки системы и совместимы с обновлениями.