Это старая версия документа.
Введение
Данная статья является подразделом статьи "Спящий режим".
Если спящий режим с помощью pm-hibernate и s2disk работает некорректно (к примеру, у меня с Ubuntu 14.04 так и происходит: pm-hibernate не работает вообще, а s2disk после загрузки в Windows 7 ругается на поврежденный образ), следует воспользоваться третьей реализацией - TuxOnIce.
Установка
Для работы TuxOnIce нам нужно пропатченное ядро, которое для Ubuntu доступно прямо из репозиториев:
sudo add-apt-repository ppa:tuxonice/ppa sudo apt update sudo apt install linux-generic-tuxonice tuxonice-userui
Официальный мануал заявляет нам, что все должно работать без правки конфигов, однако в случае со свопфайлом это не так: TuxOnIce формат записи UUID+offset понимать отказывается. Поэтому поступаем следующим образом:
cat /sys/power/tuxonice/swap/headerlocations
Получаем оттуда подобную строку:
For swapfile `/swapfile`, use resume=swap:/dev/sda2:0x2110000.
и записываем информацию о начале свопфайла на нашем разделе в данном формате в конфиг TuxOnIce:
sudo nano /etc/hibernate/tuxonice.conf
Добавляем (или раскомментируем) строку
SuspendDevice swap:/dev/sda2:0x2110000
Теперь Initramfs и Grub:
echo "resume=swap:/dev/sda2:0x2110000" | sudo tee /etc/initramfs-tools/conf.d/resume sudo nano /etc/default/grub
В строке GRUB_CMDLINE_LINUX_DEFAULT заменяем предыдущую запись с resume и resume_offset на
resume=swap:/dev/sda2:0x2110000
Обновляем настройки GRUB и генерируем новый initramfs:
sudo update-grub sudo update-initramfs -u
Указываем в качестве средства гибернации tuxonice:
echo "SLEEP_MODULE=tuxonice" | sudo tee -a /etc/pm/config.d/module
Перезагружаемся и проверяем работу TuxOnIce с помощью
sudo pm-hibernate
или кнопки «Спящий режим» в меню.