Уголок новичка
   205

Не могу настроить hibernate.

Пробовал по двум инструкциям. Во первых, редактировал /etc/default/grub, написал:
GRUB_CMDLINE_LINUX_DEFAULT=«quiet splash resume=/home/swapfile»
Обновил конфигурацию загрузчика:
sudo update-grub

Во вторых, редактировал /etc/mkinitcpio.conf и написал последнее слово в строке:
HOOKS=«base udev autodetect modconf block keyboard keymap filesystems resume»
Обновил файл:
sudo mkinitcpio -p linux58

Результат:
[[email protected] ~]$ pm-hibernate
bash: pm-hibernate: команда не найдена
[[email protected] ~]$ systemctl hibernate
Failed to hibernate system via logind: Not enough swap space for hibernation

Странно, что может не хватать места для гибернации, потому что у меня swapfile 4G, а используется памяти менее 1G.

3 комментария

avatar
Читайте здесь.
Вкратце, при сне в файл система должна также знать где этот файл физически находится на диске (параметр ядра resume_offset=swap_file_offset).
Также есть заморочка при расположении swap-файла в /home.
Вот это «resume=/home/swapfile» неправильно, в Арчвики есть примеры, я советую по UUID.
Например:
GRUB_CMDLINE_LINUX_DEFAULT=«quiet splash resume=UUID=UUID_раздела_с_swap-файлом resume_offset=КАКОЕ-ТО_ЧИСЛО»
0
avatar
Написал:
GRUB_CMDLINE_LINUX_DEFAULT=«quiet splash resume=UUID=9c642e30-532b-4a42-97f0-3486f83fba8e resume_offset=6334464»

Но со второй ссылкой насчет swapfile в /home не смог разобраться. Можете подсказать, чтоб было понятно, как надо сделать? По прежнему также не работает.
0
avatar
Swap в /home не работает, так как сервис logind находится в песочнице. Есть вариант заставить работать, но надо лезть в системные сервисы, что небезопасно, да и ненужно при обычных условиях.
Советуют делать как описано здесь.
Затем заново узнать swap_offset, изменить его в параметрах Grub, и выполнить
sudo update-grub
или
sudo grub-mkconfig -o /boot/grub/grub.cfg
Последний раз редактировалось
+1
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.