升级 macOS Monterey 后设备休眠半夜频繁唤醒问题

最近更新到了 macOS Monterey, 半夜总会被屏幕照醒,就觉得很诡异,以前也有过,但都是有通知的时候才会点亮屏幕,现在是没有任何理由的自己点亮,硬件还是那个硬件,那就应该是软件的锅了。

在网上查了一圈,先是找到了苹果官方的教程:https://support.apple.com/zh-cn/guide/mac-help/mchlp2995/mac

写的很详细,但显然是没有任何用处的……

于是继续深挖,还真找到了原因,使用命令 pmset -g log | grep DarkWake 就可以看到,在你睡觉的过程中,你的 Mac 并没有歇着……

看看输出,这几个比较典型,大部分都是这样的,一个 DarkWake, 一个 Wake, 两个仅仅相连,那么问题就出来了, DarkWake 是给电脑在后台唤醒来更新数据的,但不知怎么的,外设被触发,从而导致了全局唤醒。

我的一个笔记本就这样一夜掉电10%。

 

总之,我并不想要这个功能, 就那个 PowerNap,对我来说,我更希望它能给我多省点电,于是大概解决思路就这么多:关掉网络访问唤醒,关掉 PowerNap……不过问题来了,在 m1 设备上,其实是没有 PowerNap 选项的……(显然,苹果对自己的续航很有信心,但他们忽略了Bug的威力)

在 m1 芯片上,就算是连接电源的界面也没有 PowerNap 选项
在 m1 芯片上,就算是连接电源的界面也没有 PowerNap 选项

于是对于 PowerNap 这个功能来说,我们只能从命令行下手,首先使用 pmset -g 命令查看当前状态,找到 powernap 的值,如果不是 0 ,说明是启用的状态,使用命令 sudo pmset -a powernap 0 关掉它。

同时,还有另外一个 tcpkeepalive ,这个默认应该也不是 0 ,也要关掉,它决定了你的 rmbp 在休眠时是否要保持 tcp 连接——显然,保持的话就需要定时唤醒来联网了…… sudo pmset -a tcpkeepalive 0 ,执行这条命令会导致终端提示:

大概是说关了的话某些功能会受到限制,其实就是系统功能不能休眠时联网了,我相信真有人偷了你 Mac,它也连不上网的。

总之,两条命令下来,问题应该就解决了,但我找的资料中,还有一条是“关闭优化电源充电”,就那个“Optimized battery charging”,但我不确定这个会不会同样导致唤醒,并且我之前的老 15 寸也确实鼓包了两块电池了,我决定先试试开着它,如果还唤醒,再关掉好了。

总之,就这样,如果你读到这篇文章的时候我没来更新,那说明上述方案是有效的 :)


参考文献:
  • https://discussions.apple.com/thread/252061187
  • https://apple.stackexchange.com/questions/253776/macbook-pro-13-with-retina-display-consumes-10-battery-overnight-with-the-lid-c
  • https://discussions.apple.com/thread/252276065

本文由 落格博客 原创撰写:落格博客 » 升级 macOS Monterey 后设备休眠半夜频繁唤醒问题

转载请保留出处和原文链接:https://www.logcg.com/archives/3528.html

发布日期:
分类:Mac OS 标签:

作者:落格博客

如非声明,本人所著文章均为原创手打,转载请注明本页面链接和我的名字。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注