How to disable all power management in Ubuntu (for a server netbook)?

Solution 1:

On Ubuntu 16.04 LTS, I successfully used the following to disable suspend:

sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target

And this to re-enable it:

sudo systemctl unmask sleep.target suspend.target hibernate.target hybrid-sleep.target

Solution 2:

You can disable those power management features at various level.

Graphical User Interface level

In GNOME, you should edit the following file:

sudoedit  /usr/share/polkit-1/actions/org.freedesktop.upower.policy

One section concerns the suspend function and the other the hibernate one. Each as a tag that you have to set to no:

<allow_active>no</allow_active>

Keyboard level

Now, to avoid the problem if the keyboard has some related keys for these features, you have to enter the following command:

gconftool -s /apps/gnome-power-manager/buttons/hibernate -t string interactive

Command line level

It would still be possible to trigger a suspend or hibernation from the command line, here is how to disable it.

We have to create an executable script in /etc/pm/sleep.d/ that will cancel any hibernate or suspend actions.

sudoedit /etc/pm/sleep.d/000cancel-hibernate-suspend

The content of this file should be:

#!/bin/sh
# prevents hibernation and suspend
. "$PM_FUNCTIONS"
case "${1}" in
  suspend|hibernate)
    inhibit
    ;;
  resume|thaw)
    exit 0
    ;;
esac

Now make that file executable:

chmod 0755 /etc/pm/sleep.d/000cancel-hibernate-suspend