macbook合盖插电时可彻底禁用所有唤醒源:需关闭网络唤醒、蓝牙唤醒、临近唤醒,执行sudo pmset -a lidwake 0禁用lid传感器,并关闭powernap与tcpkeepalive,最后用pmset验证各项值均为0。

您希望MacBook在完全合盖、插着原装电源适配器的状态下,彻底不响应任何外部信号(如键盘敲击、鼠标移动、网络请求、蓝牙设备连接等)而自动唤醒,避免远程任务被意外中断、渲染进程被中止或共享服务被非预期触发。
禁用所有合盖状态下的唤醒源
系统默认允许多种事件在合盖后唤醒Mac,包括网络访问、蓝牙设备、USB外设动作等。必须逐项关闭这些通道,否则即使盖子闭合,一次误触键盘或局域网Ping包就可能让Mac瞬间亮屏并消耗资源。
第一步:点击左上角苹果图标 → “系统设置” → 左侧边栏点“电池” → 右侧切换至“电源适配器”标签页。
第二步:向下滚动,取消勾选【唤醒以供网络访问】——该选项一旦启用,任何局域网内的ARP请求、SMB探测或mDNS广播都可能触发唤醒,且无日志提示。
第三步:进入“蓝牙”设置 → 点击右下角“详细信息”(或“…”)→ 选择“高级” → 取消勾选【允许蓝牙设备唤醒此电脑】。注意:此开关对已配对的Magic Keyboard/Mouse生效,但对未配对设备无效;若使用第三方蓝牙键鼠,需确认其固件是否支持该策略。
第四步:打开“访达”→“应用程序”→“实用工具”→“终端”,输入以下命令并回车:
sudo pmset -c proximitywake 0
该命令禁用基于AirPods或Apple Watch靠近检测的唤醒逻辑,防止佩戴设备走近时自动亮屏。
彻底屏蔽lid传感器与底层唤醒链路
仅关闭图形界面选项无法阻断硬件层唤醒信号。lidwake参数控制盖子开合事件是否进入电源管理队列,必须强制设为0,否则系统仍会将“lid closed”解析为合法唤醒前置条件。
方法一:禁用lidwake(关键步骤)
在终端中执行:
sudo pmset -a lidwake 0
输入管理员密码(不显示字符,输完直接回车)。执行后立即生效,无需重启。此后系统内核将完全忽略lid传感器输出值,既不触发休眠也不触发唤醒。
方法二:锁定唤醒抑制策略
继续在终端中执行:
sudo pmset -c powernap 0
sudo pmset -c tcpkeepalive 0
powernap控制后台服务轮询唤醒,tcpkeepalive则维持长连接心跳;两者在合盖状态下若开启,会周期性拉起网络栈并可能连带激活CPU与GPU。
验证当前唤醒源状态
执行命令检查所有潜在唤醒源是否已关闭:
pmset -g assertions
重点观察输出中是否有以下字段:
• “PreventUserIdleSystemSleep” 值为 0(表示无应用主动阻止睡眠)
• “PreventUserIdleDisplaySleep” 值为 0(表示显示器可正常关闭)
• “ExternalMedia” 和 “BluetoothHIDDevice” 行应不存在或标记为 “0”
再运行:
pmset -g | grep -E "(lidwake|proximitywake|powernap|tcpkeepalive)"
确认每项输出值均为 0。若任意一项为 1,则对应唤醒路径仍处于活动状态。
最后合盖前,确保Mac处于活跃状态(非睡眠),等待10秒后再合盖。此时外接显示器应保持输出,但任何外部操作(包括敲击外接键盘空格键、用手机ping本机IP、靠近已配对Apple Watch)均不会导致屏幕点亮或系统响应。











