Highlighter

воскресенье, 15 января 2012 г.

Hibernate на ASUS Eee 1201NL при помощи uswsusp

В продолжении этого поста

Понятно, что одним только Suspend2RAM сыт не будешь. Мне очень хотелось настроить нормальный hibernate при закрытии крышки ноута. Так как стандартные pm-utils не работали, то воспользовался этим руководством.


Для работы hibernate можно воспользоваться пакетом из AUR uswsusp-git. После сборки и установки редактируем файл /etc/suspend.conf и указываем там раздел со свопом
resume device = /dev/sda3
Затем нужно добавить в /etc/mkinitcpio.conf хук uresume перед filesystems — раздел в этот момент уже должен существовать. Теперь можно пересобрать initramfs:
# mkinitcpio -p kernel26
Важно! Сначала указываем параметр, потом собираем initramfs

Всё! Теперь по s2disk система уходит в hibernate, при загрузке восстанавливается.

Теперь настроим, чтобы по закрытию крышки ноут уходил в hibernate.

Для этого подправим скрипты из acpi-eeepc-generic

У этих скриптов довольно запутанная структура, поэтому пришлось проделать довольно много работы.
Для этого в /etc/conf.d/acpi-eeepc-generic.conf
Добавляем следующее
COMMANDS_HIBERNATE=("/etc/acpi/eeepc/acpi-eeepc-generic-suspend2disk.sh")
SUSPEND2DISK_COMMANDS=("s2disk")

Переменная COMMANDS_LID_CLOSE_ON_BATTERY содержит команду, которая выполняется при закрытии крышки. Приводим её к следующему виду
COMMANDS_LID_CLOSE_ON_BATTERY=("${COMMANDS_HIBERNATE<@>}")

Теперь копируем /etc/acpi/eeepc/acpi-eeepc-generic-suspend2ram.sh в /etc/acpi/eeepc/acpi-eeepc-generic-suspend2disk.sh

Теперь исправляем в файле /etc/acpi/eeepc/acpi-eeepc-generic-suspend2disk.sh
execute_commands "${SUSPEND2RAM_COMMANDS<@>}"
на
execute_commands "${SUSPEND2DISK_COMMANDS<@>}"

Перезапускаем acpid
# /etc/rc.d/acpid restart

И закрываем ноут. И открываем. И опять закрываем. И снова открываем. Всё работает :)

Опубликовано на Welinux.ru

Комментариев нет:

Отправить комментарий