After hibernating with systemctl hibernate
, the system boots normally as if it had been shutdown. I have the resume parameter in the kernel line and the resume hook in mkinitcpio.conf
These are the relevant kernel messages:
$ dmesg | grep -i swap
[ 0.000000] Command line: initrd=\initramfs-linux.img root=/dev/sda2 rw resume=/dev/sda4
[ 0.000000] Kernel command line: initrd=\initramfs-linux.img root=/dev/sda2 rw resume=/dev/sda4
[ 0.350295] PM: Checking hibernation image partition /dev/sda4
[ 8.776686] Adding 8191996k swap on /dev/sda4. Priority:-1 extents:1 across:8191996k FS
$ dmesg | grep -i hibern
[ 0.350295] PM: Checking hibernation image partition /dev/sda4
[ 0.350301] PM: Hibernation image not present or could not be loaded.
So the only remaining possibility is that systemctl
didn't write to disk. In fact, when I run the command, the screen first goes blank for a couple of seconds, then I can see my terminal again, and finally it shutdowns itself.
I read that pm-utils do not work very well with systemd, so I wouldn't want to switch to those. Any suggestions?
Thanks!
Answer
To elaborate @AdrianRatnapala's comment, you have to:
Find uuid of your swap partition. Suppose the partition is sdb3, then
$ ls -l /dev/disk/by-uuid/ | grep sdb3
lrwxrwxrwx 1 root root 10 окт. 9 08:59 1dd7e123-1f82-45f0-a202-0ff3ea6f081a -> ../../sdb3Open
/etc/default/grub
, and find the line starting withGRUB_CMDLINE_LINUX_DEFAULT="
. Add there between the quotesresume=/dev/disk/by-uuid/your-swap-uuid
. As an example:GRUB_CMDLINE_LINUX_DEFAULT="quiet splash resume=/dev/disk/by-uuid/1dd7e123-1f82-45f0-a202-0ff3ea6f081a"
- Run as a root
update-grub
- A reboot is needed to use the new kernel command-line.
Comments
Post a Comment