To enable Hibernation in 20.04 and 22.04:
Increase swapfile
size to match RAM size.
Check the swap that is in use:
sudo swapon -s
If swap partition(s) are found:
sudo swapoff -a
sudo nano -Bw /etc/fstab
Add #
before the UUID
of the swap partition(s):
# UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX none swap sw 0 0
Add a line for the swapfile
, if one does not exist:
/swapfile none swap sw 0 0
Create the swapfile
:
sudo fallocate -l XG /swapfile
where X
is swapfile
's size in GB:
sudo mkswap /swapfile
sudo chmod 0600 /swapfile
sudo swapon /swapfile
Reboot:
sudo reboot
Add resume
location and offset to grub.cfg
:
A hibernate button can be added using GNOME extensions.
Note that there is a slight possibility of getting holes in a swapfile
when creating it with fallocate
. /var/log/syslog
can be searched for the phrase swapon: swapfile has holes
to ensure there will be no data loss.
A swap file can alternatively be created using dd
:
sudo dd if=/dev/zero of=/swapfile bs=1G count=8
An error when using dd
may overwrite your HDD.
For added safety do not invoke hibernation when you bank account number, etc, is visible and your root partition is unencrypted.