一直困扰我的问题,从我估计10年前使用笔记本开始,笔记本的睡眠问题一直是个谜,能不能一直保持睡眠完全看人品。大部分时间自己不断自动唤醒,唤醒了之后又很难自己再进入睡眠,在自己家插着电还好,像我经常要出去玩,甚至比如是背着笔记本去图书馆,从背包里掏出来,轻则像一个发热的暖宝宝,重则电池已经狗带。
今天,经过了不懈的努力,似乎终于解决了问题。亲测笔记本3次睡眠,每次半天以上,并没有被自动唤醒,掉电量都在10%以内。现在把解决方法总结出来,这个方案是渐进式的,如果前一步没有解决问题就继续执行。
1.记得关闭蓝牙鼠标
这是我之前最常见的问题,因为没有关闭蓝牙鼠标所以鼠标在背包里光标随便晃一下或者点击一下,又把电脑唤醒了。网上的禁止方法都是在设备管理器里,找到鼠标,然后点电源选项,然而我没有找到这个选项,而且很多人抱怨改了电源选项仍然会唤醒,所以大家记得在手动睡眠电脑之前先关蓝牙鼠标。
2.禁用一切唤醒设备
用管理员打开cmd,输入
powercfg /devicequery wake_armed
你就能看到一连串现在能够有权限唤醒你电脑的设备。我的是显示有两个莫名其妙的设备
Thunderbolt(TM) Controller - 9A1B
Thunderbolt(TM) Controller - 9A1D
这个Thuderbolt大家知道是一个数据接口,不知道为什么会有这个权限,总之对于任何设备,我们应该可以在设备管理器里边,找到它,然后再电源选项里,取消勾选允许唤醒我的电脑。然后再运行这个命令,你应该可以看到它返回None,就成功了。
3.打开休眠模式
用管理员打开cmd,输入
powercfg -a
你应该就可以看到你当前支持的睡眠模式。经过我的调查,现在大部分的新笔记本,都已经不支持了传统的S1-S3等级睡眠(逐步加深),而只支持一个最新的S0,这个S0状态下基本是每小时能消耗个快10%的电,也叫做standby模式,所以靠他的话,一会还好,如果是过个夜估计基本自动关机了。
依稀记得以前S3很省电,基本等同于休眠。但是现在变成了鸡肋的S0,不过好在我们还是可以开启休眠模式的。要注意睡眠和休眠的区别,睡眠好像是不断电,休眠基本上各个硬件都断电了,进程存在硬盘上,所以休眠几乎不耗电。所以我们只要打开休眠模式,那么基本上电池可以存放很久很久还有电。
但是大家注意休眠模式不是直接进入的。而是先从睡眠S0之后过一段时间延时进入,有的人是可以在系统设定时间的,我的可能因为是公司电脑没这个选项,但是经过观察应该在睡眠1-2个小时后也进入休眠模式了,所以电池还是不会消耗太多的。
休眠模式叫做“Hibernate”, 所以如果在输入powercfg -a之后,没有看到这个选项,说明没有激活,那我们只需要输入以下命令
powercfg -h on
就可以激活休眠啦!再次输入powercfg -a之后,应该可以在可用的睡眠模式中找到Hibernate
4.关闭Away Mode
这个Away mode叫离开模式,如果你激活了休眠模式但是仍然没有进入休眠,那么可能是因为这个模式的干扰(不太确定,因为我没有测试开关这个模式的区别)。这个模式会让系统进入离开模式而不是睡眠模式。在离开模式下,系统会响应用户的操作,并且继续运行,但会关闭音频和视频来给人一种睡眠的感觉。我们可以使用
powercfg /requests
来查询是否开启了Away mode, 好像一般都是默认开启的,那么我们可以使用命令行更改注册表
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\238C9FA8-0AAD-41ED-83F4-97BE242C8F20\25DFA149-5DD1-4736-B5AB-E8A37B5B8187 /v Attributes /t REG_DWORD /d 2 /f
这个命令会关闭Away mode。具体的教程看这里
5.关闭阻止睡眠的进程
有一些比如杀毒软件,或者视频播放,或者chrome插件,会阻止进入睡眠。记得关掉它如果需要电脑稍后进入睡眠。但是因为这些似乎是阻止电脑自动进入睡眠,像我每次要带电脑出门时候都是手动睡眠,经过几次测试似乎是不受影响。
但是如果大家需要自动睡眠,还是应该关闭。可以使用这个命令查看是否有进程阻止
powercfg /requests
在Display和System的信息下,会显示阻止进入自动睡眠的程序,如果我开了Keep awake的chrome插件的话,就可以看到它显示在信息里,如果我关闭之后,这里都会显示None。
总结
好了以上就是所有的注意事项,注意以上并不是每一步都需要,理论上应该前三步就可以解决问题了。希望大家可以出去带着电脑浪的时候不用担心电池问题。