MacBook 每隔 10 分钟自动唤醒
结论:触发程序是 mDNSResponder。
macOS 内置的 DHCP/mDNS 客户端会反复创建 MaintenanceWake 电源断言,断言名 mDNSResponder:maintenance,唤醒请求里写明 info="DHCP lease renewal"。powerd 据此在 RTC 上设定维护闹钟,睡眠中的机器被拉起约 45 秒完成 DHCP 租约续期,然后重新入睡。
| 证据 | 数据 |
|---|---|
| 唤醒原因分布(14 小时日志) | 112 次 DarkWake 中 102 次是 NUB.SPMI0Sw3IRQ ... rtc/Maintenance(RTC 维护闹钟);9 次 wifibt;1 次用户活动 |
| 唤醒请求方 | process=mDNSResponder request=Maintenance,info="DHCP lease renewal",deltaSecs 稳定在 476–504 秒 |
| 断言与唤醒的对应 | mDNSResponder 创建 MaintenanceWake 断言 115 次,与 102 次 rtc/Maintenance DarkWake 逐一配对,偏差 0 秒;按小时统计,断言数与唤醒数 1:1(14–23 点每小时 8–11 次) |
| 周期吻合 | 睡眠时长峰值 501/499/502/500/498 秒 ≈ 8.3 分,加 45 秒唤醒 ≈ 9.5 分钟,和你说的“每 10 分钟”对得上 |
| 排除项 | womp 0、networkoversleep 0 已关;无第三方程序持有唤醒断言;dasd(iCloud)有 27 次 SleepService 请求,但只造成零散唤醒 |
说白了就是:路由器的 DHCP 租期偏短,macOS 每 ~9 分钟要续租一次;睡眠中续租必须联网,就只能靠 RTC 闹钟把自己叫醒。
解决方案是去路由器把 DHCP 服务的租约时间改成 86400 秒,因为我之前 给 Docker 配置完整的 IPv6 macvlan 网络环境 让 Docker 容器都接到了局域网中,为了降低 Docker 容器占用一个 IP 地址的时长,把这个时间改成 600 秒,数字对的上。
Windows 可以使用 PIN 但无法修改 PIN
在 更新 BIOS 版本至 F12 后启动 Windows 提示 0xC0430001 错误 提到了
在 Windows 账户设置里,PIN 那一栏显示“该选项不可用”,提示“抱歉,此 PIN 不能用于你组织的资源”。
它会造成我没有办法在设置页面去修改我的 PIN,但可以通过登录页面点击我忘记了来重新设置一个新的。Windows Hello 以及 Passkey 等功能都是可继续使用的,之前保存的密钥在 BIOS 更新后也没有丢失。
这是在 AI 的帮助下定位了问题,他发现 dsregcmd /status 命令输出中 NgcSet 为 NO,代表未检测到当前用户的 Windows Hello 密钥,但当前 Windows 用户关联了 Liberty University(自由大学)的工作或学校账户。
$ dsregcmd /status
+----------------------------------------------------------------------+
| User State |
+----------------------------------------------------------------------+
NgcSet : NO
WorkplaceJoined : YES
WorkAccountCount : 1
WamDefaultSet : YES
WamDefaultAuthority : consumers
WamDefaultId : https://login.microsoft.com
+----------------------------------------------------------------------+
| Work Account 1 |
+----------------------------------------------------------------------+
DeviceCertificateValidity : [ 2026-01-20 08:52:52.000 UTC -- 2036-01-20 09:22:52.000 UTC ]
KeyProvider : Microsoft Platform Crypto Provider
TpmProtected : YES
WorkplaceTenantName : Liberty University
WorkplaceMdmUrl :
WorkplaceSettingsUrl :
NgcSet : NO这个账户是之前 【DEAD】 免费白嫖3-5年的Microsoft 365来了,这回带copilot,有GPT-5.2 - 败家 - 美卡论坛 薅羊毛注册上的,Microsoft 365 Premium 一直持续到 2031 年。我用到现在,它的Copilot基本没啥用,OneDrive 我也没用上,也就这个 Office 套件能有点用。
所以应该就是这个原因了,去把它断开就好了,但我先不断开。
让 Bitwarden 浏览器插件也能使用 Windows Hello
BitWarden 桌面端应用又是一个浏览器,居然占用2GB,真是太可怕了。搜索到个 Aalivexy/bwbio: A lightweight, native handler for the Bitwarden browser extension’s biometric authentication. 可以绕过桌面端,让浏览器插件直接访问 Windows Hello,立马安装使用没有问题。甚至连 Windows Hello 输入 PIN 码的框也能正常显示在前台,而不是像之前那样需要手动去任务栏里找弹出的窗口