为什么我的 Mac 不睡眠?看看是什么让它保持唤醒
当你的 Mac 拒绝睡眠时,一定是有什么东西持有着一个电源断言,也就是一条要求 macOS 保持唤醒的请求,而这未必总是显而易见。Keepresso 会用直白的语言告诉你原因。
打开活动面板
Keepresso 的活动面板会列出当前正在让你的 Mac 保持唤醒的每一个应用,数据直接来自系统的实时电源断言。它相当于终端里 pmset -g assertions 输出的一个易读版本,让你能清楚看到到底是谁在让 Mac 保持唤醒:Keepresso、一个浏览器、一个下载管理器、一个视频应用,或你早就忘了还在运行的什么东西。
决策日志
面板旁边还有一份决策日志,说明每一次 Keepresso 会话为什么启动或停止:是哪个触发器生效了、计时器到时了、电池或热暂停了,还是手动切换的。所以如果原因出在 Keepresso 自己身上,你也能准确看到是为什么。日志在重新启动应用后依然保留,并提供简单的七天汇总,显示 Keepresso 让 Mac 保持唤醒了多久,以及会话两端都有读数时的电量下降。
常见元凶
- 一个正在播放音频或视频的浏览器标签页。
- 一次仍在进行中的下载或同步。
- 一次备份,或一个长时间运行的应用。
- 某个 Keepresso 触发器的条件仍然成立(活动面板和日志会清楚说明这一点)。
一旦你知道是什么在让 Mac 保持唤醒,退出那个应用、完成任务,或者调整触发器,Mac 就会重新进入睡眠。
常见问题
没有应用的话,怎么查看是什么在让 Mac 保持唤醒? 在终端里,pmset -g assertions 会列出所有当前生效的电源断言以及背后的进程。Keepresso 的活动面板提供的是同一份信息的直白语言版本,你不用去读原始输出。
为什么我的 Mac 会在夜里自己醒来? 这通常是一次预定事件,而不是什么东西在让它保持唤醒:一次 Time Machine 备份、Power Nap、一个“为网络访问而唤醒”的请求,或者一个蓝牙设备在触发它。pmset -g log 会显示唤醒原因;活动面板则会显示 Mac 醒来之后是什么在让它保持唤醒。
合上盖子没有让它睡眠,为什么? 要么是还有什么东西持有电源断言,要么是 Mac 因为接通电源并连接了显示器或键盘而处于合盖模式。先查看活动面板;如果是 Keepresso 自己的合盖模式开着,那属于预期行为。
卡住的电源断言对 Mac 有害吗? 它不会造成损害,但会消耗电池并阻止睡眠,直到那个应用释放它或者你退出它。在活动面板里看到它,是结束它最快的办法。
更多「疑难排解」内容
