≡ Menu

How do I enable laptop mode to improve Linux laptop battery life?

Q. I’m using Redhat enterprise Linux desktop / workstation operating system with HP laptop. Several Linux distributions have a / script to enable to disable Laptop mode but Redhat misses the script. How do I enable or disable laptop mode on fly?

A. Modern Linux kernel includes very good support for Laptop mode. It is use to control the IO subsystem. When laptop mode is enabled, the Linux will try to be smart about when to do disk I/O. It gives as much time as possible to be in a low power state. If mode is disabled if value is set to zero (0). To enable mode use non zero value such as 5.

Display or print current Laptop mode

Type the following command:
$ cat /proc/sys/vm/laptop_mode


Turn on or enable Laptop mode

Type the following command as the root user:
$ sudo echo 5 > /proc/sys/vm/laptop_mode
# echo 5 > /proc/sys/vm/laptop_mode

A note about Ubuntu Linux

According to this page:

Ubuntu has a laptop-mode-tools package, which is installed by default on laptops. However, laptop mode is disabled by default in Ubuntu Edgy (6.10), because some people have been experiencing hangups with it on certain laptops (mostly Thinkpads). Until now, nobody has any clue what is happening here. To reenable laptop mode, edit /etc/default/acpi-support and set ENABLE_LAPTOP_MODE=true.

If you want to use the latest version of laptop mode tools, you can use the Debian packages, they are compatible enough to work out-of-the-box on Ubuntu.

A note about Suse Linux

=> Suse Linux comes with powersaved tool, so please ignore above commands for power saving.

Updated for accuracy.

Tweet itFacebook itGoogle+ itPDF itFound an error/typo on this page?

{ 12 comments… add one }

  • Owen December 23, 2007, 4:35 am

    The actual command needs a > symbol in it like follows: sudo echo 5 > /proc/sys/vm/laptop_mode

  • nixCraft December 23, 2007, 8:21 am


    Thanks for the heads up.

  • Owen December 23, 2007, 8:37 am

    Your Welcome,
    I’ve ran into that problem on my blog before.

  • klez March 11, 2009, 9:17 pm

    note that “sudo echo > root-owned-file” doesn’t work, since you echo as root but will still be writing via your shell, which is running as your regular user. I do realize it says ‘do this as root’ but it’s still a bit misleading. And if you’re already root, why sudo?

    as non-root try:
    sudo -s
    echo 5 > /proc/csys/vm/laptop_mode

    • Ikem December 8, 2012, 8:56 pm

      That’s what I do:

      echo “5”|sudo tee /proc/sys/vm/laptop_mode

  • Casey May 26, 2009, 9:45 am

    sudo bash -c “echo 5 > /proc/sys/vm/laptop_mode”

  • gunnar-eee August 23, 2009, 8:50 pm

    laptop mode is broken in Ubuntu. It keeps spinning the drive up/down at 10 second intervals, seems nobody have gotten the parameters right so it becomes usable.
    I hope it becomes sorted out. Until then its off for me.

  • shirish September 18, 2009, 2:18 am

    While its true its broken, its also due to merge not happening of laptop-mode-tools.


  • INDY July 18, 2010, 6:31 am

    We should save changed state of value if we add vm.laptop_mode = 5 in /etc/sysctl.conf

    Anyway, true way is:

    show current value:
    # /sbin/sysctl -n vm.laptop_mode

    set value:
    # /sbin/sysctl -w vm.laptop_mode=”5″

    • oot der hoos October 24, 2012, 1:58 pm

      Using quotes, like “5”, failed with an error for me.
      I did:
      /sbin/sysctl -w vm.laptop_mode=5

  • Surendar.S October 9, 2012, 4:50 am

    sir i want answer for.. “how to improve battery life in ubuntu?”

  • handsome December 11, 2013, 5:51 am

    Ok great awesome but what does it do?

Leave a Comment