💻 合盖操作指南
如何让 Mac 保持唤醒,即使合上 MacBook 盖子
合上盖子不是空闲超时 - 它是硬件级别的睡眠,这正是 caffeinate 在这里毫无作用的原因。下面是:三种真正有效的方法、命令、各自的坑,以及无需这一切、一键就能搞定的那个开关。
免费试用 14 天 · 一次性 $39.99 · 无遥测 · macOS 13+
首先:为什么你惯用的招数没用
几乎每个人都会先试 caffeinate,合上盖子,然后发现 Mac 还是睡着了。这不是 bug,也不是你的参数写错了。
caffeinate - 以及所有 "amphetamine 式" 的菜单栏应用 - 创建的是一个阻止空闲睡眠的电源断言:也就是因为你离开键盘而触发的那种睡眠。合上盖子则完全是另一回事。macOS 在硬件/固件层面处理盖子开关,直接让机器睡眠,空闲睡眠断言对此无从置喙。
由此得出的结论:要熬过合盖,你要么需要 Apple 官方的合盖模式设置,要么需要某种能翻转系统睡眠禁用标志的东西 - 那是另一套、粗暴得多的机制。这就是仅有的两扇门。
1. 合盖模式(Apple 官方、有保证的方式)
合盖模式是官方支持的、在合上盖子的情况下运行 MacBook 的方式。它完全可靠 - 只是要付出硬件的代价。
- 接上电源。把 Mac 接到充电器或带供电的扩展坞上。仅靠电池,合盖模式撑不住。
- 连接一台外接显示器。HDMI、USB-C 或 Thunderbolt。这一部分没有变通办法 - 没有显示器,就没有合盖模式。
- 连接一个外接键盘或鼠标。有线的,或蓝牙的(确保在设置里打开了 "允许蓝牙设备唤醒此电脑")。
- 合上盖子。Mac 继续运行,外接显示器接管画面。如果屏幕没有亮起,在外接键盘上按一个键。
坑在于:你得随身带一台显示器、一个键盘和一个充电器。这在桌前没问题,可一旦你在移动中 - 在咖啡馆、在火车上,或者 Mac 装在包里 - 就毫无用处。这也意味着,如果你的目的本就是带着机器走开,合盖模式永远帮不了你。
2. sudo pmset -a disablesleep 1(强大,也容易让人后悔)
这是粗暴的工具。它设置一个系统级标志,告诉 macOS 根本不要睡眠 - 包括合盖时。它需要 root 权限,而且会一直生效,直到你清除它。
# 在系统级禁用睡眠(在许多 Apple Silicon Mac 上能熬过合盖)
sudo pmset -a disablesleep 1
# 检查它当前是否已设置(1 = 已禁用睡眠,0 = 正常)
pmset -g | grep SleepDisabled
# 恢复正常 - 千万别忘了这一条
sudo pmset -a disablesleep 0 然后合上盖子,Mac 继续工作。这是好消息。现在说实话的部分。
它每次都需要 sudo
设置和清除标志都会提示输入管理员密码。没有任何安全的办法用脚本绕过去。
它会持久生效,也容易被遗忘
没有任何东西提醒你。周二设置了,忘了,你的 Mac 就再也不睡了 - 电池耗到见底,风扇狂转,一台发烫的笔记本封在有衬垫的包里。
内置显示屏可能保持通电
在合上的盖子下,内屏可能白白继续耗电 - 浪费电池,还在最散不出去的地方额外发热。
全有或全无
它不会只针对你真正在乎的那次构建、渲染或 agent 运行。它是 "这台 Mac 永不睡眠",7×24 小时,直到你想起来为止。
而且它并不保证有效:在某些 Apple Silicon 机型上,Apple 会无视这个标志,在合盖时强制睡眠。在把一次长时间运行托付给它之前,先测一测你自己的机器 - 启动个任务,合盖一分钟,重新打开,看看它是否还在跑。
免费试用 14 天 · 一次性 $39.99 · 无遥测 · macOS 13+
3. 普通的保持唤醒应用(它们熬不过合盖)
值得直说,因为它能替你省下一个晚上:经典的 "amphetamine 式" 菜单栏工具大多都是封装了 caffeinate 所用的同一个空闲睡眠断言。它们很适合防止 Mac 在下载途中打瞌睡,可一旦合上盖子就完全无能为力。如果一个工具没有明确说它能处理合盖睡眠,就当它不能。
关于盖子打开时的完整方法,参见 让 Mac 保持唤醒的每一种方法,说实话。
4. 简单的方式:AwakeMate 里的一个开关
AwakeMate 有一个 合盖时保持唤醒 选项 - 在设置 › 选项里,或直接在引导流程中。打开它,批准一次性的辅助工具,整个设置就完成了。无需 Terminal,无需显示器,也没有要记住的标志。
它与你自己敲 pmset 命令的不同之处在于范围:AwakeMate 只在你选定的工具确实在运行时才阻止睡眠。当你的构建、渲染或 agent 完成后,正常的睡眠立刻回归。
只针对真正的工作
合盖保持唤醒只在被监视的工具运行时生效 - Xcode、ffmpeg、Claude Code - 而非永久生效。
它会调暗屏幕
在合上的盖子下,内置显示屏会被调暗,因此不会白白耗电或增加热量,等你打开盖子时亮度会恢复。
它会自我还原
关闭该选项,或退出 AwakeMate,设置就会被还原、亮度也会恢复。不留任何痕迹。
它从不动你的能源设置
你保存的节能 / 电池偏好设置会原封不动地保留。该选项默认关闭。
诚实的提醒,同上:这在大多数 Apple Silicon Mac 上有效,但 Apple 会在某些机型上强制睡眠。带着一次运行合一次盖子,确认你的机器能撑住。如果撑不住,合盖模式是有保证的后备方案。
它为之而生的使用场景:启动一次长时间的 agent 运行或构建,合上盖子,把 Mac 塞进包里,用手机给它共享网络,一路上用手机不断查看进展。这就是整个想法 - 完整演示参见 包里的 agent。
免费试用 14 天 · 一次性 $39.99 · 无遥测 · macOS 13+
手动 pmset 与 AwakeMate
pmset AwakeMate sudo,每一次都要 一个开关,一次性辅助工具批准 通宵运行 agent?参见 为什么 AI agent 需要你的 Mac 保持唤醒。
常见问题
合上盖子时如何让 MacBook 保持唤醒?
三种方法。合盖模式(电源 + 外接显示器 + 外接键盘或鼠标)是 Apple 官方、有保证的路线,但需要硬件。sudo pmset -a disablesleep 1 设置一个系统级睡眠禁用标志,在许多 Apple Silicon Mac 上有效,但会持久生效、需要 root,而且容易被遗忘。或者在 AwakeMate 里打开 合盖时保持唤醒,它只在你选定的工具确实运行时才阻止睡眠,并会自我还原。
caffeinate 在合盖时有效吗?
无效。caffeinate 创建的是一个空闲睡眠电源断言,而合盖睡眠不是空闲睡眠 - 它在盖子磁吸合上的瞬间由硬件/固件层面触发。断言就这么被无视了。这正是惯用的 Terminal 招数在这里失效的原因。
没有外接显示器可以用合盖模式吗?
官方不行。Apple 的合盖模式要求 Mac 接着电源并连着外接显示器,还要有外接键盘或鼠标来唤醒它。没有显示器时,合上盖子 Mac 就会睡眠。设置睡眠禁用标志(或使用 AwakeMate 的合盖选项)是不接显示器还能保持唤醒的唯一办法。
sudo pmset -a disablesleep 1 安全吗?
它不会损坏任何东西,但在实际使用中有风险。它是系统级且持久的,所以如果你忘了它,Mac 就再也不睡 - 电池会耗到见底、机器发烫,还可能封在合上的包里持续 "焖烧"。用完后务必用 pmset -g | grep SleepDisabled 检查,并用 sudo pmset -a disablesleep 0 清除。
如何检查当前是否已禁用睡眠?
运行 pmset -g | grep SleepDisabled。值为 1 表示已在系统级禁用睡眠;0 表示正常的睡眠行为。用 sudo pmset -a disablesleep 0 撤销它。
如何让 Mac 在我的包里持续工作?
打开 AwakeMate 的合盖选项,启动你在乎的工作,如果它需要网络就用手机给 Mac 共享网络,然后合上盖子。AwakeMate 会调暗内置屏幕,让它不在盖子下白白耗电。用一个透气的包,长时间运行时让它接着电源或充电宝。
合盖保持唤醒在每台 Mac 上都有效吗?
不是,也没人能诚实地保证这一点。在某些 Apple Silicon 机型上,Apple 会无视睡眠禁用标志、在合盖时强制睡眠,所以同样的提醒对 pmset 和 AwakeMate 都适用。测一次你自己的机器:启动一次运行,合盖一分钟,打开看看工作是否还在继续。合盖模式是唯一有保证的方法。