uswsusp
.для начала удостоверяемся что используем свопфайл, и объем его достаточен, чтоб убралась вся оперативная память, при случае.
Если все так и есть - переходим к настройке:
1. Ставим пакет -
apt install uswsusp
2. Проводим первоначальную настройку - sudo dpkg-reconfigure -pmedium uswsusp
По итогу проверим конфиг
uswsusp
и запомним параметры resume device
и resume offset
4. Добавим параметры загрузки в /etc/default/grub
приведя следующую строчку к подобному виду, на основе своих параметровGRUB_CMDLINE_LINUX_DEFAULT="resume=/dev/disk/by-uuid/5ade1b5d-9ea0-4e76-9dad-849b617abdf3 resume_offset=34816"
Применяем правки командой
sudo update-grub
5. После праки конфига - обновим инитрд с
sudo update-initramfs -u -k all
6. Правим юниты systemd, для коректной отправки в hibernate
sudo cp /lib/systemd/system/systemd-hibernate.service /etc/systemd/system/
в файле
/etc/systemd/system/systemd-hibernate.service
правим строчку ExecStart
к видуExecStart=/bin/sh -c 's2disk && run-parts --regex .\* -a post /lib/systemd/system-sleep'
И перевычитываем юниты с
sudo systemctl daemon-reload
7. Контрольная перезагрузка для применения стартовых параметров перед проверкой.
Проверяем, при завершении сессии выбираем "Спящий режим": Экран моргнет и покажет процесс упаковки памяти в swap утилитой
s2disk
, после чего компьютер уйдет спать, чтоб при очередном старте увидеть этот образ и запустить сессию с того места, где мы её оставили.