Недавно мне захотелось воспользоваться такой удобной функцией в Ubuntu, как гибернация, однако вместо вожделенного спящего режима получал лишь намертво подвешенную систему. При попытке разобраться удалось лишь выяснить что проблема далеко не уникальна и «будет исправлена в обозримом будущем». После недолгого гугления и чтения форумов было принято решение воспользоваться возможностями приложения s2disk из пакета uswsusp, и воспользоваться как можно прозрачнее…
Для начала нам потребуется раздел swap (в ходе экспериментов со swap-файлом не удалось получить желаемого результата),
выяснить есть ли такой раздел и где его искать мы можем так:
в выводе которой мы увидим нечто вроде:
Если swap-раздел обнаружен успешно, приступаем к установке:
Как показала практика, uswsusp чудесно определяет параметры окружения, но нелишним будет убедиться в правильности настроек. Для этого любимым редактором открываем конфиг /etc/uswsusp.conf с правами рута и внимательно смотрим:
Собственно больше там особо нечего настраивать, все настройки по умолчанию задаются так, как надо. Теперь самое время проверить работоспособность:
Если никаких сюрпризов не возникло и компьютер успешно «уснул», то пропускаем следующий шаг. Мне же пришлось столкнуться с перезагрузкой после создания снимка. В результате чтения мана удалось выяснить, что если задать любое незарезервированное значение, то выполняется принудительное выключение питания, что мы и сделаем, указав в конфиге /etc/uswsusp.conf любое понравившееся значение, например:
Вот теперь приступим к самому главному — заставим Gnome Power Manager использовать уже настроенный s2disk вместо встроенной функции гибернации. Для этого нам потребуется отредактировать скрипт по адресу /usr/lib/hal/scripts/hal-system-power-hibernate и привести к следующему виду:
Теперь ваш любимец будет мирно «засыпать» при нажатии кнопки «Спящий режим» в окне выключении компьютера со всеми удобствами: плавым затуханием экрана и блокировкой экрана при пробуждении =)
P.S. Учтём комментарии — всё вышеописанное делалось на рабочей станции с 1526Мб ОЗУ. Размер раздела swap составлял сперва 310Мб, затем 10Гб
Для начала нам потребуется раздел 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Гб