Thursday, August 27, 2026

Решение проблемы со спящим режимом на HP Probook

 У меня большая радость в личной жизни: я разобралась со спящим режимом. Краткая предыстория: у меня на ноуте hp probook с прошивкой uefi под линуксом есть проблема, о которой я читала много раз в блогах (например, блог дебиана, арча и LQ). Точнее, даже две проблемы, которые, судя по сообщениям в блогах, часто приходят вместе: 

1. Ноут зависает в простое. Экран гаснет и аппарат перестает реагировать на любые тычки клавиатуры, мыши и тачпада, кроме долгого нажатия на power. Но в моем случае это фигня, я просто запускаю screensaver и он может простаивать как угодно долго.

2. Ноут не уходит в suspend или не выходит из него. Ну то есть, например, при попытке перевести его в susoend-to-RAM индикатор вайфая становится оранжевым (то есть беспроводная карта отключается), остальные продолжают гореть и ноут больше ни на что не реагирует, кроме, опять же, выключения долгим зажимом power. 

Я сразу подозревала, что причина в сетевом стеке (точнее, видимо, в его взаимодействии с прошивкой, потому что на ноутах с bios всё работает), но не сразу поняла, как отключить ВСЁ: я то забывала про хрони, то ждала слишком мало.

РЕШЕНИЕ для Slackware 15.0 и для Debian 13 у меня отличается, поскольку дебиан установлен через debootstrap и там нет нетворкменеджера и тому подобного, а в слаке есть.

1. Slackware

bluetooth отключен через rfkill в rc.local; NetworkManager перед саспендом надо остановить - /etc/rc.d/rc.networkmanager stop. Сетевые приложения типа браузера я перед этим закрываю. Ещё был подлый ModemManager, который невозможно было убить командой kill, так как он сразу запускался заново. Сносить его я не стала, потому что однажды попыталась удалить wayland, которым все равно не пользуюсь, после чего перестал запускаться... FIREFOX. Короче, я просто сняла с его бинарника бит исполнения: chmod -x /usr/sbin/ModemManager  Еще приходится останавливать chronyd через kill -s 15 или killall

А теперь неочевидная часть: после этого надо еще несколько минут подождать (я раньше пыталась, но, видимо, мало ждала. В слаке надо ждать дольше, чем в дебиане), и тогда suspend работает на ура как через /sys/power/state,  так и через loginctl suspend.

2. Debian

Блютус отключен. Закрываю браузер, останавливаю wpa_supplicant (например, через команду terminate в wpa_cli) или dhcpcd для проводной сети (dhcpcd -x ifname). Chrony здесь можно не останавливать - без сети он сам отключается. Тоже надо подождать пару минут, потом systemctl suspend.