第一步:去掉电源唤醒事件
- 可在「系统设置>通用>关于本机>系统报告>硬件>电源」查看当前的电源唤醒事件,这些唤醒事件会导致笔记本无法正常进入睡眠
- 执行以下命令可以去掉当前的电源唤醒事件,但只是暂时去掉;一段时间后会再次出现,需进行第二步操作才能根除此问题
sudo pmset schedule cancelall
第二步:防止自动唤醒
- 来源:https://www.v2ex.com/t/921536
- 执行以下命令可将com.apple.AutoWake.plist设置为不可更改的只读文件,避免再次出现电源唤醒事件影响睡眠
sudo chflags schg /Library/Preferences/SystemConfiguration/com.apple.AutoWake.plist
- 注意:升级系统前需执行以下命令变更回原属性,升级完成后再次改回来
sudo chflags noschg /Library/Preferences/SystemConfiguration/com.apple.AutoWake.plist
第三步:使用pmset管理睡眠参数
- 执行以下命令查看当前睡眠参数:
pmset -g custom
- 睡眠参数会导致睡眠过程消耗较多电量,可执行以下命令一键优化(实测待机56小时耗电6%):
sudo pmset -a lidwake 1
sudo pmset -a lowpowermode 0
sudo pmset -a proximitywake 0
sudo pmset -a standby 1
sudo pmset -b standbydelayhigh 3600
sudo pmset -b standbydelaylow 1800
sudo pmset -c standbydelayhigh 7200
sudo pmset -c standbydelaylow 3600
sudo pmset -a ttyskeepawake 0
sudo pmset -a hibernatemode 25
sudo pmset -b gpuswitch 0
sudo pmset -c gpuswitch 2
sudo pmset -a powernap 0
sudo pmset -b highstandbythreshold 75
sudo pmset -c highstandbythreshold 50
sudo pmset -a displaysleep 10
sudo pmset -a womp 0
sudo pmset -a networkoversleep 0
sudo pmset -a sleep 15
sudo pmset -b lessbright 1
sudo pmset -a halfdim 1
sudo pmset -a acwake 0
sudo pmset -a tcpkeepalive 0
sudo pmset -a disksleep 10
复制代码
- 备注:
- 笔记本默认 hibernatemode=3,睡眠过程内存持续供电会消耗较多电量,建议改为 hibernatemode=25 节省电量
- pmset使用方法及睡眠参数含义,可参考 https://sspai.com/post/61379 自行配置睡眠参数
- 自行睡眠参数,需留意 sleep(单位分钟) ≥ displaysleep(单位分钟) ≥ disksleep(单位秒)
- pmset修改电源参数后,尽量不要在系统设置app中修改,避免导致睡眠异常
来源:远景