在 Ubuntu 14.04 中合上盖子时笔记本电脑不会进入休眠状态

在 Ubuntu 14.04 中合上盖子时笔记本电脑不会进入休眠状态

好的,我知道已经有几个与此相关的问题。我尝试了很多解决方案,但都无济于事。我将在这里详细说明我做了什么以及我的配置文件如何,希望有好心人能指出我遗漏了什么。

一些初步信息:

  • 我从 14.01 .iso 安装了 Ubuntu 14,但它变成了 14.04,我猜是因为我在安装过程中选中了自动更新选项。
  • 我连接了外接显示器。在某些情况下,这似乎很重要。
  • 正如解释的那样这里,Ubuntu 14的电源设置里没有让PC休眠的选项,只能挂起,什么也不做。
  • pm-hibernate工作正常。
  • 我的交换空间比我的 RAM 稍大一些

1. 我有一台 Mint(如果我没记错的话是 14),关闭盖子后才会进入休眠状态,直到我添加了一些脚本。在 Ubuntu 14 中没有/etc/acpi/lid.sh我可以像在 Mint 中那样编辑的内容。我尝试创建一个包含以下内容的内容:

echo 'ok' > ok
grep -q closed /proc/acpi/button/lid/*/state
if [ $? = 0 ]
then
    su - gabriel -c 'dconf read /org/gnome/settings-daemon/plugins/power/lid-close-ac-action' | grep hibernate
    if [ $? = 0 ]
    then
        pm-hibernate
    fi
fi

当我合上盖子时,文件ok没有被创建,这意味着脚本从未被调用。

我尝试将 lid.sh 移入events/

根据建议这里,我尝试将其重命名为lid.sh.post并将其移动到/etc/acpi/local/,以及其他几种目录和名称的组合(带/不带.post,在/etc/acpi/local/events/...)

2. 我照做了这里并安装了gnome-tweak-tool,这样我就可以将合上盖子时的操作设置为休眠。在我这样做之后,控制面板/电源中的下拉菜单是空白的(不是暂停也不是“不执行任何操作”),但现在它们再次显示“不执行任何操作”,我不知道我做了什么来改变这一点。并运行

su - gabriel -c 'dconf read /org/gnome/settings-daemon/plugins/power/lid-close-ac-action'

仍然返回“无”,这会损害我的脚本(可能无论如何都是无用的)。

3. 我照做了这里:编辑/etc/systemd/logind.conf并设置HandleLidSwitch为“休眠”:

cat /etc/systemd/logind.conf | grep -i lid
#HandleLidSwitch=hibernate
#LidSwitchIgnoreInhibited=yes

我也尝试过

#LidSwitchIgnoreInhibited=no

4. 正如解释的那样这里这里,我编辑了/var/lib/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla

root@gabriel-linux:/var/lib/polkit-1/localauthority/50-local.d# cat com.ubuntu.enable-hibernate.pkla 
[Re-enable hibernate by default in upower]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes

[Re-enable hibernate by default in logind]
Identity=unix-user:*
Action=org.freedesktop.login1.hibernate
ResultActive=yes

答案1

lid.sh为了调用我的脚本( ) /etc/acpi/,我必须在中创建正确的文件/etc/acpi/events/

该文件必须被调用lm_lid,内容如下:

event=button/lid.*
action=/etc/acpi/lid.sh

重新启动系统以使该功能生效。

笔记:在弄清楚这一切之前,我回到了 Linux Mint(现在是 17),现在有了正确的文件,这个就可以正常工作了。不过,我想听听 Ubuntu 用户的意见。

答案2

我在 Linux Mint 17.3 中遇到了类似的问题。当我安装 nvidia 视频驱动程序代替默认开源驱动程序时,问题就解决了。(管理->驱动程序管理器->选择 nvidia 推荐的驱动程序)

相关内容