Ubuntu – Force hibernate using hibernate instead of pm-hibernate

18.04hibernatelenovopower-management

I'm running 18.04 and trying to have my system use hibernate instead of pm-hibernate when my laptop's lid closes.

I have a swap partition of 20GB on 16GB of RAM, so ample space.

When I use pm-hibernate, I get a small apci error that pops up very quickly when both hibernating and restoring that I cannot read. While the hibernate works in the sense it seems to dump to disk and restore from disk, it seems to be a sleep state in that it uses battery at a normal rate, rather than shutting down completely and ceasing battery use.

However, when I use the hibernate installed by:

sudo apt-get install hibernate

And run:

sudo hibernate

And restore from that, I notice my machine does in fact shutdown—the LEDs stop throbbing, etc—and battery usage goes to zero. This is the behavior I would like to see when my lid closes, not the sleep behavior that uses battery as if I were making active use of the computer.

I have followed these guides:

modified

/etc/systemd/logind.conf

to include:

#HandleLidSwitch=suspend
HandlelidSwitch=hibernate

And added my swap partition change in:

/etc/default/grub

To include the correct resume= link, and requested s2disk specifically with:

sudo cat /etc/pm/config.d/00sleep_module
SLEEP_MODULE="swsusp"

I have read the following related askubuntus:

I have also read these links on Lenovo and Arch forums:

How can I make sure the that the hibernate called by lid-close is hibernate not pm-hibernate?

Update

This is still a problem and still makes the Carbon X1 6th gen fundamentally useless with ubuntu. Any solutions that could fix this and maybe additionally add a login prompt might be almost as good as a Windows machine from 4 years ago… 😉

Best Answer

I too hate having to pass a URL so I will copy and paste the information and attach the web page to the bottom. I do not see this in your link.

While reading this, I noticed that hibernation may not work if you formatted with btrfs file system? So, how is hibernation permanently enabled in Ubuntu 16.04?

To make the Ubuntu hibernation process permanent, you need to create a new file using a text editor on the command line:

sudo nano /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla

The system requires root privileges to enable the hibernation option, hence, the command sudo should be added. You can use other text editors like vi, gedit, emacs, etc.

Now, copy and paste the following text to a file (use the mouse; keyboard shortcuts won’t work):

[Re-enable hibernate by default in upower]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes

[Re-enable hibernate by default in logind]
Identity=unix-user:*
Action=org.freedesktop.login1.hibernate;org.freedesktop.login1.handle-hibernate-key;org.freedesktop.login1;org.freedesktop.login1.hibernate-multiple-sessions;org.freedesktop.login1.hibernate-ignore-inhibit
ResultActive=yes

Press CTRL+O to save, and CTRL+X to exit the nano editor.

Now, logout of your system and then login again. You will now see a hibernate option, along with the Shut Down and Suspend options.

The link for your convenience is: https://fossbytes.com/enable-disable-hibernate-option-ubuntu-power-menu/