Description
This test case tests hibernation via the pm-hibernate command.
Setup
- Check that you have
pm-utils
installed:# rpm -q pm-utils
- Check that the hibernate is supported on your platform:
$ cat /sys/power/state
- If there is disk in the output, it signals that the hibernate is supported.
- Check your swap:
$ swapon -s
- You may see something like:
Filename Type Size Used Priority /dev/dm-2 partition 3997692 1856 -1
- Note the filename of the swap partition with the highest priority (/dev/dm-2 in this case). It will be your resume partition (you will need this filename later when resuming).
Troubleshooting
For cases you booted from the live medium and there is no active swap partition, but you have swap on the host disk LVM/LUKS (i.e. it wasn't detected) you may try to follow the steps bellow (you can combine them in cases you have e.g. LVM on LUKS, etc.). In case nothing helps feel free to skip this test case.
LVM
- Scan for logical volumes:
# vgscan --mknodes # vgchange -a y # lvscan
- Find your swap (e.g. /dev/vg0/swap) and activate it:
# swapon /dev/vg0/swap
You may also boot with the following dracut parameters (hit Tab in the live media boot menu) that should do the same (e.g. swap on vg0/swap):
rd.lvm.vg=vg0 rd.lvm.lv=vg0/swap
LUKS
- Unlock encrypted partition (e.g. /dev/sda2):
# cryptsetup luksOpen /dev/sda2 crypt1
- Or if you know the UUID (it can be obtained by cryptsetup luksUUID /dev/sda2) you may use:
# cryptsetup luksOpen UUID=luks-fa649b04-5ede-496f-9168-331161a2b833 crypt1
- Activate swap:
# swapon /dev/mapper/swap1
You may also boot with the following dracut parameters (hit Tab in the live media boot menu) that should do the same (only UUID is supported):
rd.luks.uuid=luks-fa649b04-5ede-496f-9168-331161a2b833
How to test
- Run the following command:
# pm-hibernate
- Wait for hibernation process to complete (it typically takes cca. 2-60 seconds).
- Resume by hitting the power button.
- If you hibernated from the live medium:
- Select boot from the live media.
- When the boot manager displays make sure the default option is selected (e.g. "Default" or "Start PM Test", the exact value depends on the medium/boot manager you are using) and edit the kernel boot parameters (mostly by hitting Tab).
- Append to the kernel boot parameters resume=/dev/dm-2 (replace /dev/dm-2 by your swap partition, it is the filename you previously noted during the setup) In case your resume partition is still not recognized you may try to add dracut boot parameters from troubleshooting.
- Boot (mostly by hitting Enter).
Expected Results
- System correctly hibernates.
- System correctly resumes.