I would like my laptop to hibernate itself when the battery level is 10% to be sure it has enough power to complete the operation properly. Actually if I don't pay attention my laptop informs me it will hibernate when it's too late, so instead it brutally shuts down. This kills lithium batteries and is not acceptable.
-
The approved answer above does not work on Ubuntu 12.04. – user1956808 Jun 25 '16 at 21:03
-
2what works is hackerb9's answer. Tested on ubuntu 16.04 – Sep 16 '16 at 07:40
2 Answers
- Start
dconf-editor
- Browse to
org
->gnome
->settings-daemon
->plugins
->power
- Change the values of
percentage-critical
andpercentage-action
to the level you require - Change
use-time-for-policy
tofalse
- Done!
You can also do this from a terminal with:
gsettings set org.gnome.settings-daemon.plugins.power percentage-critical 10
gsettings set org.gnome.settings-daemon.plugins.power percentage-action 9
gsettings set org.gnome.settings-daemon.plugins.power use-time-for-policy false
-
3
-
Tried this and having problem If you know how to solve this please let us know – Waqas Mar 07 '14 at 14:10
-
-
2
-
1
-
-
1this doesn't work on ubuntu 20.04 to get a pop-up notification when the battery level gets low. But hackerb9's solution below works! – NeStack May 20 '21 at 22:27
Looks like Gnome moved the settings. Critically low battery is now handled by UPower. Instead of using gsettings, you should now edit the file /etc/UPower/UPower.conf
UsePercentageForPolicy=true
PercentageLow=10
PercentageCritical=3
PercentageAction=2
CriticalPowerAction=HybridSleep
…
By the way, if you read the UPower.conf file, upower used to (in v 0.99.1) only suggest using percentages in order to work around broken firmware. The default was UsePercentageForPolicy=false
, which used the battery's time estimate. That makes some sense since, as a battery gets older, it lasts shorter for any given percentage. A fixed percentage that worked previously might at some point no longer allow the laptop enough time to hibernate properly.
However, it looks like upower now (v 0.99.4) is defaulting to percentages and has a cryptic message about the reasoning. I don't know which is best, but here's how to use time remaining for your battery policy, if you so desire.
UsePercentageForPolicy=false
TimeLow=1200
TimeCritical=300
TimeAction=120
CriticalPowerAction=HybridSleep
Note that Suspend/Sleep as such is not supported by the Upower tool, that HybridSleep is used instead (which looks much like Sleep, but is also close to Hibernation) and that HybridSleep (just like Hibernation) needs a swap space to work. On how to create one in case you don't have it, see this answer.
-
-
@hackerb9 do we need to restart the machine in order for the change to take effects – Kasun Siyambalapitiya Jul 03 '18 at 09:19
-
5You can do
sudo systemctl restart upower.service
to apply the settings. – Florian Feb 27 '19 at 18:31 -
1the upower.conf mentions warning, and "upower -d" at CLI one of the items listed is "warning-level" and by default its value is "none". I would like very much to get some kind of warning before the notebook does a shutdown. Is the upower.conf options documented somewhere that might show how to set a warning level? – alabamatoy Jan 14 '20 at 19:08
-
1
-
1I find it "interesting" that Upower.conf starts with such a comment: # Only the system vendor should modify this file, ordinary users should not have to change anything. – Levente Dec 26 '20 at 15:12
-
1In Ubuntu 20.04, it appears the default is now
UsePercentageForPolicy=true
(unless another program modified my config since the initial OS install) – Addison Klinke Dec 15 '21 at 15:53