Great guide. Very well written and helpful. However I want to put a HUGE WARNING.
Before “step 2” of the Hibernation enabling with (mkinitcpio -P
etc). Check that /etc/mkinitcpio.conf looks ok.
If it looks like this:
MODULES=(btrfs)
BINARIES=(/usr/bin/btrfs)
FILES=()
HOOKS=(base udev autodetect keyboard keymap modconf block filesystems fsck)
HOOKS+=" resume "
Then it’s not ok and running mkinitcpio -P
will print errors “ERROR: Hook 'base resume ’ cannot be found” and now your system is unable to boot… (so don’t do this or don’t reboot until you fix it).
Instead, edit it like this, moving the resume to it’s proper place:
MODULES=(btrfs)
BINARIES=(/usr/bin/btrfs)
FILES=()
HOOKS=(base udev autodetect keyboard keymap modconf block filesystems fsck resume)
Then you can continue with “step 2”, but I would really do it like this instead:
- Backup grub.cfg
sudo cp /boot/grub/grub.cfg /boot/grub/grub.cfg.bak
- Run
sudo grub-mkconfig -o /boot/grub/grub.cfg
first. If you want, diff the new conf with the backup to see that the changes are applied. - Then you can run
sudo mkinitcpio -P
. If gives you errors it’s important to fix them. Revert your config changes and then runsudo mkinitcpio -P
again until it works. Warnings are fine though (especially “Possibly missing firmware for module” which are common). - Reboot