Как стать автором
Обновить

Gnome Power Manager: гибернация через s2disk

Время на прочтение2 мин
Количество просмотров1.5K
Недавно мне захотелось воспользоваться такой удобной функцией в Ubuntu, как гибернация, однако вместо вожделенного спящего режима получал лишь намертво подвешенную систему. При попытке разобраться удалось лишь выяснить что проблема далеко не уникальна и «будет исправлена в обозримом будущем». После недолгого гугления и чтения форумов было принято решение воспользоваться возможностями приложения s2disk из пакета uswsusp, и воспользоваться как можно прозрачнее…

Для начала нам потребуется раздел swap (в ходе экспериментов со swap-файлом не удалось получить желаемого результата),
выяснить есть ли такой раздел и где его искать мы можем так:
swapon -s

в выводе которой мы увидим нечто вроде:
/dev/sda2 partition 10482404 181280 -

Если swap-раздел обнаружен успешно, приступаем к установке:
sudo apt-get install uswsusp

Как показала практика, uswsusp чудесно определяет параметры окружения, но нелишним будет убедиться в правильности настроек. Для этого любимым редактором открываем конфиг /etc/uswsusp.conf с правами рута и внимательно смотрим:
  • параметр «resume device», должен указывать на swap-раздел (который мы подглядели в самом начале)
  • параметр «shutdown method», задаёт действие, выполняемое после записи снимка, по умлочанию «platform»

Собственно больше там особо нечего настраивать, все настройки по умолчанию задаются так, как надо. Теперь самое время проверить работоспособность:
sudo s2disk

Если никаких сюрпризов не возникло и компьютер успешно «уснул», то пропускаем следующий шаг. Мне же пришлось столкнуться с перезагрузкой после создания снимка. В результате чтения мана удалось выяснить, что если задать любое незарезервированное значение, то выполняется принудительное выключение питания, что мы и сделаем, указав в конфиге /etc/uswsusp.conf любое понравившееся значение, например:
shutdown method = poweroff

Вот теперь приступим к самому главному — заставим Gnome Power Manager использовать уже настроенный s2disk вместо встроенной функции гибернации. Для этого нам потребуется отредактировать скрипт по адресу /usr/lib/hal/scripts/hal-system-power-hibernate и привести к следующему виду:
#!/bin/sh
s2disk

Теперь ваш любимец будет мирно «засыпать» при нажатии кнопки «Спящий режим» в окне выключении компьютера со всеми удобствами: плавым затуханием экрана и блокировкой экрана при пробуждении =)

P.S. Учтём комментарии — всё вышеописанное делалось на рабочей станции с 1526Мб ОЗУ. Размер раздела swap составлял сперва 310Мб, затем 10Гб
Теги:
Хабы:
Всего голосов 5: ↑4 и ↓1+3
Комментарии11

Публикации

Истории

Ближайшие события

19 августа – 20 октября
RuCode.Финал. Чемпионат по алгоритмическому программированию и ИИ
МоскваНижний НовгородЕкатеринбургСтавропольНовосибрискКалининградПермьВладивостокЧитаКраснорскТомскИжевскПетрозаводскКазаньКурскТюменьВолгоградУфаМурманскБишкекСочиУльяновскСаратовИркутскДолгопрудныйОнлайн
3 – 18 октября
Kokoc Hackathon 2024
Онлайн
24 – 25 октября
One Day Offer для AQA Engineer и Developers
Онлайн
25 октября
Конференция по росту продуктов EGC’24
МоскваОнлайн
26 октября
ProIT Network Fest
Санкт-Петербург
7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн
7 – 8 ноября
Конференция «Матемаркетинг»
МоскваОнлайн
15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань