23

When I upgraded from 11.10 to 12.04 my Ubuntu power menu has lost the ability to hibernate. Is there a way to add that back in, or is this default for 12.04?

0

6 Answers 6

19

Unfortunately, hibernation has been disabled by default in Ubuntu 12.04, because it wasn't working correctly on many systems.

If you are not sure if hibernation works with your hardware, you can test it by sending the hibernate command from your Terminal

sudo pm-hibernate

Here's how to enable it anyway: (warning: only for advanced users — might not work)

In the Terminal, type:

sudo gedit /var/lib/polkit-1/localauthority/10-vendor.d/com.ubuntu.desktop.pkla

Enter your password when requested.

Search for the section

[Disable hibernate by default]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=no

and replace it with

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

After the next restart, the option "Hibernate" will be back in the 'power menu' at the top right of your screen. If your hardware supports hibernation, it'll work now.

Note: In case you want to disable hibernation again, just revert the changes made above.

0
16

Hibernation is disabled by default in Ubuntu 12.04. A rationale of this decision can be found in this bug report.

See this question to reenable it:

2
  • @Chauncellor Why? Presumably as some users see and option and expect it to work, so better to make them go through a safety rpocedure? Oct 27, 2012 at 13:19
  • I'm speaking about the option being removed. Take it all away entirely. Kill it with fire. It's badly supported, badly broken junk that has caused way way more pain to many users than it should. Just sleep the computer.
    – user6658
    Nov 29, 2012 at 23:39
7

Jorge: there are several ways to hibernate a Linux computer. If Ubuntu's defaults fail, you can always try the other hibernation systems.

In a console:

sudo apt-get install hibernate

After that, reboot. That will install the uswsusp system, a reliable system with compression, that wasn't even installed with Precise.

The second system is TuxOnIce, but setting it up requires more technical skills.

After that, follow the Precise howto for enabling hibernation, posted before. It's sad to see that the packages needed to hibernate aren't even installed in a Precise default install. If you don't install "hibernate", if you try to run "sudo pm-hibernate", that command won't do anything (althogh on some systems it would perform a shutdown).

1
  • Saved my life. Spent too many hours re-sizing swap space and configuring grub/resume. This simply works (and is faster the pm-hibernate). Thanks. (asus-904hd user).
    – PAntoine
    Sep 26, 2012 at 9:09
3

It's not because of 12.04 but because you don't have a swap partition, or it is not marked as use for hibernate. I had a similar problem when I upgraded to 11.10.

Go to this webpage for help either adding a swap partition or making it ready to use swap. https://help.ubuntu.com/community/SwapFaq#How_do_I_add_more_swap.3F

Remember your swap must be bigger than your amount of physical memory if you want to hibernate!

3

Hibernate will only work if you dont have a crypted swap partition, which is the default if you choose to crypt your login directory during ubuntu 12.04 install.

1
  • Note: it is possible to use the advanced installer and setup something like cryptsetup on a partition, LVM on top and then e.g. root, home and swap as logical volumes. This allows for hibernate to work and everything is encrypted.
    – blueyed
    Jun 2, 2012 at 0:38
2

Try adding a script like


#!/bin/sh

PATH=/sbin:/usr/sbin:/bin:/usr/bin

case "${1}" in
        hibernate)
                if [ -e /dev/zram0 ]; then
                swapoff /dev/zram0
                fi
                ;;
        thaw)
                if [ -e /dev/zram0 ]; then
                swapon -p 100 /dev/zram0
                fi
                ;;
esac

to the /etc/pm/sleep.d diectory. This was need to get it working for me as guess what ? You can't hibernate to a ramdisk !!!

D.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .