盖子关闭时,笔记本电脑不会暂停
我是一个新的Ubuntu 13.10用户。 关闭笔记本电脑的盖子不会导致计算机进入挂起模式,这意味着每次关闭盖子而不手动暂停电脑时电池会死机。
在电源管理中设置了正确的设置 – 将笔记本电脑暂挂在闭合的AC和DC上,但这些不会对实际行为产生影响。
对于许多用户来说,这似乎是Ubuntu 11的常见问题 – 我能找到的唯一解决方案如下。 但是,作为一个新的linux用户,我不知道如何实际执行指令。 如果有人可以提供非常有用的其他细节。
提前致谢。
/etc/acpi/events/lidbtn triggers /etc/acpi/lid.sh which triggers /etc/acpi/local/lid.sh.post at the end of the script. /etc/acpi/local/* allows you to add your own config (eg required for wmii). generate /etc/acpi/local/lid.sh.post make it executable and add: \#!/bin/bash grep -q closed /proc/acpi/button/lid/*/state if [ $? = 0 ] then /usr/sbin/pm-suspend fi wmii will now go to suspend mode when closing the lid. It'll automatically wake up when opening the lid. #!/bin/bash load=$(cat /sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0A:00/power_supply/BAT0/capacity) min_load=20 if [ $load <= min_load ]; then pm-suspend fi
(注意,在命令之前的#
表示它应该由超级用户运行,所以将#
替换为sudo
。)
以root身份打开logind.conf
: logind.conf
# vim /etc/systemd/logind.conf
并在HandleLidSwitch=suspend
之前删除#
。 您还可以将选项suspend
更改为hibernate
或poweroff
从Launchpad Bug修复#863834,评论#30 :
- 打开终端: Ctrl + Alt + t
-
# mkdir /etc/acpi/local
-
# vim /etc/acpi/local/lid.sh.post
-
复制这个简短的脚本:
#!/bin/bash if grep -q closed /proc/acpi/button/lid/*/state then /usr/sbin/pm-suspend fi
…并键入以下内容将其粘贴到vim中: “+ p
- 输入ZZ (大写字母)即可保存
-
# chmod 755 /etc/acpi/local/lid.sh.post
(所以即使在登录用户而不是root下处理电源管理时它也能正常工作)
在回复这篇文章时,我在我的东芝Satellite a305-s6902上遇到了同样的问题(我只是在Linux上购买),发现这对我有用:
sudo vim /etc/systemd/logind.conf
然后如上所述,在HandleLidSwitch=suspend
之前删除#
并保存( ESC : w q )。
然而—>我发现我必须手动将计算机置于首位,并在每次重启后启动触发器。 我不知道为什么,但这对我一直有效。
我通过从/etc/default/acpi-support
取消注释变量LID_SLEEP=true
来解决它。
我对Linux Mint Cinnamon 17.2也有同样的问题。 由于它基于Ubuntu 14.04,我希望很多东西都是一样的。
我已经找到了自己在这里停下来的问题,直到那时我发现自己已经找到的最好的东西是在开机后第一次手动暂停,之后关闭的盖子会暂停。 阅读完这些post和评论后,我相信我已经解决了这个问题。
这是我做的:
-
打开终端会话,使用nano而不是vim,键入;
sudo nano /etc/systemd/logind.conf
-
正如所建议的那样,我在
HandleLidSwitch=suspend
之前删除了#。 然后我救了它。 -
然后我打字……
mkdir /etc/acpi/local sudo nano /etc/acpi/local/lid.sh.post
…并复制并粘贴之前发布的下5行
#!/bin/bash if grep -q closed /proc/acpi/button/lid/*/state then sudo /usr/sbin/pm-suspend fi
注意:为了完成这项工作,我将
sudo
添加到/usr/sbin/pm-suspend
。 否则它不会运行。 -
最后我保存了它,如前所述,输入; 登录用户而不是root,键入;
sudo chmod 755 /etc/acpi/local/lid.sh.post
不幸的是,这不起作用。 然而,我对脚本中的命令进行了一些测试,但是它们确实有效,所以我决定别的东西没有触发它们。 在post的后面,我遇到了一个Gnome电源管理器错误的引用:
https://bugs.launchpad.net/ubuntu/+source/upower/+bug/863834
特别有趣的是Michael Backhaus在2012-06-09发表的一篇文章,其中写道:
/etc/acpi/events/lidbtn
触发/etc/acpi/lid.sh
,触发/etc/acpi/local/lid.sh.post
。
在此之后是上述bash脚本的几乎完全相同的版本, lid.sh.post
。
在此版本的Mint中, /etc/acpi/events/lidbtn
和/etc/acpi/lid.sh
不存在。 但是, /etc/acpi/events/powerbtn
和/etc/acpi/powerbtn.sh
确实如此。 看看“powerbtn”提供了答案
这是我的解决方法:
-
要创建自定义“lidbtn”,请键入;
sudo nano /etc/acpi/events/powerbtn
并将它修改为喜欢这个用于lidbtn;
# /etc/acpi/events/lidbtn # This is called when the user closes the lid and calls # /etc/acpi/lidbtn.sh for further processing. # Optionally you can specify the placeholder %e. It will pass # through the whole kernel event message to the program you've # specified. # We need to react on "button lid.*" and "button/lid.*" because # of kernel changes. event=button[ /]lid action=/etc/acpi/lidbtn.sh
-
我保存了它。 然后将
/etc/acpi/local/lid.sh.post
复制到/etc/acpi/
并将其重命名为lidbtn.sh
。
我重新启动,现在关闭盖子总是暂停我的笔记本电脑。 但是,打开盖子时我必须手动将其唤醒。 下一个要开展的项目。
ADDENDUM:我应该补充一点,我没有第二台显示器。 对我来说,问题是当盖子关闭时暂停根本不起作用。
对我来说,问题是当连接外接显示器时 , 盖子关闭处理不同 。 因此,在dconf-editor
以用户dconf-editor
更改该选项可以解决我的问题:
架构:
org.cinnamon.settings-daemon.plugins.power
或(取决于您使用的桌面环境)
org.gnome.settings-daemon.plugins.power
名称:
lid-close-suspend-with-external-monitor
调成:
true
描述:
如果没有插入外部显示器,关闭笔记本电脑的盖子将暂停机器(由盖子关闭电池动作和盖子关闭动作键设置)。 但是,默认情况下,当外部显示器存在时关闭盖子不会暂停机器,因此可以继续在该显示器上工作(例如,对接站或媒体查看器)。 将此键设置为False以保持默认行为,或设置为True以在盖子关闭时暂停笔记本电脑,无论外部显示器如何。
我在Macbook Air 6,2上使用Mint 18.1。 这是我的解决方案,它几乎完美。
醒来时我使用mba6x_bl来修复我的MBA黑屏。 按照他们的指示 。
然后使用上面的Bob-El解决方案来解决暂停问题。
- 备份并打开/ etc / acpi / events / powerbtn
sudo cp / etc / acpi / events / powerbtn / etc / acpi / events / powerbtn_bak
sudo nano / etc / acpi / events / powerbtn -
用下面的文字替换powerbtn的内容
# /etc/acpi/events/lidbtn # This is called when the user closes the lid and calls # /etc/acpi/lidbtn.sh for further processing. # Optionally you can specify the placeholder %e. It will pass # through the whole kernel event message to the program you've # specified. # We need to react on "button lid.*" and "button/lid.*" because # of kernel changes. event=button[ /]lid action=/etc/acpi/lidbtn.sh
-
创建
/etc/acpi/lidbtn.sh
sudo nano /etc/acpi/lidbtn.sh
-
将以下文本放入其中
#!/bin/bash if grep -q closed /proc/acpi/button/lid/*/state then /usr/sbin/pm-suspend fi
- 打开电源管理 – >打开交流电源 – >操作 – >关闭笔记本电脑盖时 ,选择空白屏幕 。 这将在连接电源时保持MBA暂停。
我注意到的唯一问题是MBA 在连接电源时暂停,其键盘指示灯将自动亮起。 但除此之外,一切都运作良好。