AI Agent 实测:M2 MacBook Pro Touch Bar 不显示,远程排障全记录
MacBook Pro(M2,Mac14,7)的 Touch Bar 突然完全不显示,主屏一切正常。让 AI Agent 远程排查,没换硬件就修好了。把过程记录下来,供遇到同样问题的朋友参考。
排查过程
1. 先确认硬件是否还在
ps aux | grep TouchBarServer:进程在运行ioreg里dfr-drv、dispdfr都 registered / active
结论:Touch Bar 硬件和驱动正常,问题出在软件层。
2. 重启 Touch Bar 服务
sudo pkill TouchBarServer
服务会自动拉起,但 Touch Bar 依然黑屏。
3. 看系统日志,找到关键线索
log show --last 5m --predicate 'process == "TouchBarServer"' --style compact
两个关键错误:
SLSGetTouchBar returned nil:WindowServer 会话拿不到 Touch Bar 显示表面DFRBrightness: couldn't initialise harmony state:亮度子系统初始化失败
4. 重启 ControlStrip / ControlCenter / backlightd
仍然无效,还出现新报错:ControlStrip 提示 TouchBarServer not running(进程明明在,说明会话注册断了)。
5. 真正有效的一步:重启 WindowServer(登出再登录)
sudo pkill loginwindow
重新登录后,SLSGetTouchBar returned nil 消失。
6. 登录后把两个服务再重启一次
sudo pkill TouchBarServer
launchctl kickstart -k gui/$(id -u)/com.apple.controlstrip
Touch Bar 恢复显示。
经验总结
- Touch Bar 黑屏先别急着送修:
ioreg能看到dfr-drv/dispdfractive,硬件大概率没问题。 - 关键日志要看
log show --predicate 'process == "TouchBarServer"'。 - 看到
SLSGetTouchBar returned nil,单纯重启 TouchBarServer 没用,必须登出重登(重启 WindowServer)。 - 登出后记得把 TouchBarServer 和 ControlStrip 再重启一次,让它们重新注册到新的登录会话。
- Apple Silicon 没有 NVRAM / SMC 重置,最后的软重置手段是完全关机再开机。
评论