Fix Ubuntu (or Linux) Suspend/Hibernate Not Working Bug

I own an Asus N73JQ laptop, the spec is top notch. Since Windows has been long gone from my candidate OS, I installed Ubuntu 10.10 right away. So far the result is quite amazing. Smooth, reliable, and it feels just right. Although the OS itself is very impressive, I have 2 major issues with the hardware: (1) Function key that switches to external monitor does not work; (an update on the external monitor issue can be found here) (2) Suspend/Hibernate does not work. I have not found a solution for (1), which remains unsolved. I have, however, found a solution for (2). I am going to share this share this solution with those who having the same problem.

By googling around, I found this post. It seems that it will also work for other laptops that have similiar problem in Ubuntu 10.10. The credit belongs to the original poster and all others who contributed to that solution. Though I have thoroughly tested the script and it works for me, I do not guarantee it will work for you. So use it at your risk.

Step 1

Create a script under /etc/pm/sleep.d/. It can be any name, but to ensure the load order, use the prefix 20_.

Follow either Step 2 or Step 2 Old, but not both. The script in Step 2 appears to be more stable than the one in Step 2 Old.

Step 2

Note that if you use the code from "Step 2 Old" below, please skip this step. This script is contributed by commenter Danne.

Insert the following code into the file you have just created:

Step 2 Old

Note that if you use the code from "Step 2" above, please skip this step.

Insert the following code into the file you have just created:

Step 3

Add executable permission:

Result

Your suspend/hibernate should be now working as expected. Suggestions on improving this script are welcome.

Other Thoughts

If this script has worked for you, please post the make/model, Ubuntu distribution, related hardware information of your laptop below.

Updated 2012/03/02

Making sure you have enough space for your swap partition, otherwise hibernate will not work. I have recently upgraded my RAM. In my case, I have 12GB of RAM, but only 6GB of swap space. After the upgrade, hibernation stop working. However, after following this guide (see "Making the swap partition work for hibernate" section), hibernation becomes functional again.

I create a 30GB swap partition, and instruct Ubuntu to use this partition. Hibernation works like a charm again. To verify your system is using the swap, do

Or

Update 2011/11/10

If this has been working for you, but stop working after upgrading to Ubuntu 11.10, you may try this method:
http://turbulentsky.com/resume-from-hibernate-failed-on-ubuntu.html

Other Tips:
This might give you some clues on the suspend/hibernate issue:

Related Posts

Switch to External Monitor Connected via HDMI/VGA port in Ubuntu
Ubuntu 11.10 Look Overhaul

652 Comments Fix Ubuntu (or Linux) Suspend/Hibernate Not Working Bug

  1. Kirk

    Script worked great! :) Ubuntu 11.10

    Just purchased an ASUS X53E-RH52
    Initially resume did not work. After dropping in the script, worked like a charm.

  2. Fernando

    Thanks for your post.
    Tried your approach to fix the sleep-hibernate problem in my HP a1730n desktop running Kubuntu 10.10 64 bit. I used the Step 2 script, did more or less work.
    First time, I had to press the power button on the DT to get it to awake, would not respond to mouse or Kbd.
    When it slept one more time it froze. So I had to reboot.
    This computer must have some hardware problem, when I used Windows, it could never wake-up, so I am not surprised that it would not work.
    Thanks anyhow.

  3. Ralf

    After hibernation did not work in random intervals, step 2 now seems to work nicely for me on a Lenovo X200 tablet, Ubuntu 11.04, 2.6.38-13-generic

    Manyt thanks!

    Ralf.

  4. nasser

    brilliant script for malignant issue :) worked perfectly with fedora 16 install in Asus A43SA

  5. Kevin

    Summary of problem: Machine did not go to sleep when clicking "suspend" on Ubuntu 11.10. Instead, display was off with a completely black screen. However the backlight was still on.

    Make/Model: Asus G73-JH with ATI 5870 graphics card

    Solution: Step 2

    Thanks for the shell script. Much appreciated.

  6. Moyug

    Seems to work on a ASUS 1225B, Ubuntu 11.10.

    I haven't tested it for a long time, but I didn't encounter bigs problems at the moment.

    The first suspend to RAM in a session seems not working, but after it's okay.

  7. Vlad

    Great work! This fixed my hibernate - Ubuntu 11.10, Intel C206 motherboard, Xeon E3-1245, NVidia NVS300.

    Suspend was working fine - so I disabled the script on suspend to avoid resetting my printer (it makes a loud noise).

  8. Jonathan

    Works for me on ASUS K53E-DH31 (k53e series), on Linux mint 12 based on ubuntu 11.10.

    Cela fonctionne superbement bien pour moi sur mon ordinateur ASUS K53E-DH31 (série k53e), qui roule sur Linux Mint 12 lui même basé sur ubuntu 11.10

    Merci!

  9. Loïc

    Just wanted to thank you, and hence report that the fix works great on Asus N82J with Ubuntu 10.04 LTS !

  10. samuel

    Funciona perfecto en Toshiba U500-1DV !!
    Perfectly works on Toshiba U500-1DV

    Muchas Gracias, Thanks a lot!!!

  11. Allan

    OOO Ma Gawd
    Suspend just worked for the first time since I bought my laptop
    thanks a ton
    running ubuntu 12.04 just for the record

  12. panproteus

    Script made suspend succeed on Asus N55 @ Ubuntu 12.04 Beta2 / Linux 3.2.0-21-generic. Thanks.

  13. AtzeZ

    USB-3 fix works great, runs well on UbuntU 10.04.(lucid)/ Linux 2.6.32-40-generic
    thx a lot from Germany

  14. Pingback: » Solucionar Problemas con el Suspendido / Hibernacion en LinuxMint ITProfessional

  15. Pingback: Asus Eee: can't always resume from suspend

  16. Pouria A

    Thank you very much! I can confirm this works with Ubuntu 12.04 64bit on a Asus X44L-BBK4.

  17. cirux

    does not work for Ubuntu 11.10 64 bit on hp pavilion dv5, with nvidia graphic card. It lock the screen instead of suspending my lapdop...

  18. Walter

    installed ubuntu 12.04 on my asus k72f laptop yesterday and came upon the freeze when putting the laptop into sleep.

    Found your solution and it worked!

    thnx!!

  19. M

    I wasn't sceptical whether instructions from the start of last year would work, but they did! Hibernation now works on my Asus N61Jq running Ubuntu 12.04, Precise Pangolin (after enabling the option to hibernate, of course.) Thanks!

  20. M

    I wasn sceptical whether instructions from the start of last year would work, but they did! Hibernation now works on my Asus N61Jq running Ubuntu 12.04, Precise Pangolin (after enabling the option to hibernate, of course.) Thanks!

  21. stalker67

    Thanks man!!! Work like a charm on an Asus K52J (notebook) with Ubuntu 12.04 64 bit.

  22. Chiv

    Thanks!
    Works on Asus ul30jt, Ubuntu 12.04
    Using steps 1, 2, 3
    +
    added the following line: blacklist nouveau

    to file: /etc/modprobe.d/blacklist.conf

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">