当电池电量严重不足时,我该如何设置计算机进入待机状态?

我不小心点击了系统设置>电源下的“当电量严重不足时”的选项。原来的条目是空白的,但是在我点击后,只剩下了休眠和关机两个选项。我想把它改回挂起状态。

1你使用的是哪个版本的Ubuntu? - Anderson Green
8个回答

要将此设置更改回挂起,请使用dconf-editor。转到org.gnome.settings-daemon.plugins.power并将critical-battery-action更改为挂起。
或者,在终端会话中使用以下命令:
gsettings set org.gnome.settings-daemon.plugins.power critical-battery-action 'suspend'

默认情况下,gsettings命令已经存在,而dconf-editor需要通过安装来获取:
sudo apt-get install dconf-tools

1这个空白暂停的行为在Launchpad上有任何错误吗? - NoBugs
1GNOME 3.28.2起,不再起作用。有人有其他解决方案吗? - orschiro
gsettings list-recursively | grep percentage ; gsettings list-recursively | grep critical - Ferroao

我没有足够的声望来编辑或评论,所以如果有人愿意的话,这是对AtomHeartFather答案的评论/编辑。
您还可以使用dconf-tools更改被视为低/临界电池的百分比值。在相同的电源部分,将以下值修改为所需的百分比。 percentage-action percentage-critical percentage-low
注意:特别关注percentage-action设置,它将触发critical-battery-action设置。

更改百分比的方法是根据答案,还需要修改use-time-for-policy条目(取消选中或设置为'false'):gsettings set org.gnome.settings-daemon.plugins.power use-time-for-policy false。但这对于所有系统/机器似乎并不适用。 - user47206

没有暂停选项可用。

当电量严重不足时,您无法暂停,因为暂停需要电力将会话保存到RAM中,以便您可以更快地恢复,如果失去电力,则会失去当前的暂停状态。

休眠将当前状态复制到硬盘上,速度较慢,但您可以关闭电源。

关闭是显而易见的 - 您将失去活动会话中的任何数据,并在重新启动时开始一个新的会话。


9在一个理想的世界里,也许吧。如果我能够配置我的机器在电池电量低于15%时自动进入待机状态(足够支持数小时的待机时间),那将是太好了。因为目前的情况是,我只能将其配置为关机(这几乎肯定会导致数据丢失)或休眠(但在我的机器上完全无法正常工作)。所以,这就是不必要的限制... - Tomislav Nakic-Alfirevic
2我遇到了同样的问题。以前电池电量严重不足时,它会自动进入暂停状态。但是如问题所述,我不小心点击了系统设置>电源下的“电量严重不足时”选项。原来的设置为空白,但现在我只能选择“关机”。因此,当电池电量严重不足时,我的电脑就会关机。我想让它在这种情况下进入暂停状态。不知道如何恢复到原来的状态,即它会自动暂停的状态。 - Mukesh Chapagain
1在Ubuntu 12.04中,“休眠”选项被禁用,当电池电量严重不足时,计算机会重新启动而不是进入暂停状态。 - Anderson Green
1@chapagain 我也遇到了完全相同的问题。你使用的是哪个版本的Ubuntu? - Anderson Green
1@AndersonGreen 我正在使用 Ubuntu 12.04 - Mukesh Chapagain
@Mark Rooney 有没有可能添加“暂停”选项?我曾经尝试启用“休眠”,结果之后遇到了许多稳定性问题。 - Anderson Green
1正如其他答案中提到的dconf设置所示,“没有挂起选项”是不正确的。但根据这个答案下的评论,该解决方案在某些系统版本(14.04)或某些笔记本电脑上有效,但在其他情况下可能无效。 - user47206
虽然答案是正确的(关于UPower的配置),但如果您重新配置systemdman systemd-sleep.conf),实际上可以将其挂起,例如UPowerHybridSleep操作。 - doak
是的,现在已经是2022年了,如果Linux能够正常休眠(或从休眠中恢复),这仍然是一种奢侈。特别是对于我们这些使用独立显卡的用户来说。在这种情况下,挂起模式总比没有好。 - undefined

我写了一个简单的bash脚本,在任何Linux上都可以运行...只需将此脚本添加到启动项...每两分钟,脚本会检查电池状态,如果电池电量低于11%,则会进入挂起模式...

#!/bin/sh
flag=0
while [ 1 ]; do
  var=$(upower -i /org/freedesktop/UPower/devices/battery_BAT0| grep -E "percentage"| grep -o '[0-9]*')
  if [ $var -lt 11 ] && [ $flag -eq 0 ]; then
    systemctl suspend
    flag=1
  elif [ $var -gt 11 ] && [ $flag -eq 1 ]; then
    flag=0
  fi
  sleep 120
done

1爱,简单而在18.04版本中运行良好。 :) - BlandCorporation

我遇到了这个问题。
每当我在认真工作时,电脑突然黑屏,我感到非常沮丧。
我编写了一个脚本,每两分钟检查一次交流电状态,当电源断开时进入休眠模式。请根据您的电池健康情况进行修改。我的电池在主电源中断后只能工作两分钟。
#!/bin/bash

if [[ $(cat /sys/class/power_supply/AC0/online) == *0* ]] ; then

    echo 'On battery power'
    #pmi action suspend

    dbus-send --system --print-reply \
    --dest="org.freedesktop.UPower" \
    /org/freedesktop/UPower \
    org.freedesktop.UPower.Suspend

#else
#    echo 'On Ac Power'
fi

我把脚本放在一个名为 powerMon.sh 的文件中,并将其设置为每两分钟运行一次的 cron job

在12.04上,当电池电量低或机器空闲时,我使用sleepd来暂停机器。

尽管sleepd没有为Ubuntu 14.04打包,并且甚至已经被其开发者放弃,但你可以自己编译和安装它

在Ubuntu 12.04上的安装:

sudo apt-get install sleepd

编辑文件/etc/default/sleepd并进行以下设置:
# -E       Do not poll events (since they weren't working for me).
# -c 60    Poll every 60 seconds.
# -u 900   Sleep after 15 minutes idle time when on battery,
# -U 3600  or 60 minutes when on AC power,
# -b 3     or when battery power drops below 3%.
# -H       (optional) Use upower instead of ACPI.

PARAMS="-E -c 60 -u 900 -U 3600 -b 3"

然后重新启动守护进程:
sudo service sleepd restart

它还有选项在有网络活动时保持唤醒,但是这些对我来说已经失效了。
在我的机器上,显然ACPI并不总是正确地报告温度,所以我需要添加-H来告诉sleepd从upower而不是ACPI读取温度。通过添加-v并使用tail -f /var/log/*log | grep --line-buffered sleepd观察日志文件,我发现了不正确的读数。
(我在12.04的一台笔记本电脑上遇到了一个奇怪的bug,即机器在暂停后立即重新唤醒,但只有当sleepd因低电池而暂停而不是因闲置时间而暂停时才会发生。希望您不会有这样的经历!这个问题在14.04下从未发生过。)

在最新版本的Ubuntu上,电池关键操作在用户界面上不可用。但是,您可以按照以下步骤进行设置。
编辑/etc/Upower/Upowerc.conf并进行如下设置。
UsePercentageForPolicy=true
PercentageLow=20
PercentageCritical=8
PercentageAction=5
CriticalPowerAction=Hibernate

现在,重新启动 upower systemd 单元:

systemctl restart upower

错误的文件名 c - Ferroao

有一种方法可以完全禁用暂停/关机。 gsettings set org.gnome.settings-daemon.plugins.power critical-battery-action 'false' (如果即使在电量为100%时也显示严重低电量的情况下)