要查清mac电脑历次开机时间、重启频次和启动上下文,需用last命令读取/var/log/wtmp日志获取开关机时间线,用log命令检索unified logging中结构化启动事件,并通过who -b、系统报告和uptime三源比对验证启动时间真实性。

要查清Mac电脑历次开机的具体时间、重启频次和启动上下文,必须绕过图形界面直接读取系统底层日志,因为控制台应用默认只显示最近几小时的日志,而真实历史藏在/var/log/wtmp和Unified Logging数据库里。
用last命令提取完整开关机时间线
这一步操作起来很简单,直接把命令敲进去就行,但结果依赖/var/log/wtmp二进制日志——该文件由内核在每次启动、关机、重启时自动写入,不可伪造,时间戳精确到分钟。
打开“访达”→按下Shift + Command + U快速进入“实用工具”,双击启动“终端”。
输入以下命令并回车:【last reboot】。
终端将列出所有reboot记录,格式为reboot ~ 二 7月1 14:32,首行即为最近一次开机;若输出为空,说明系统从未正常重启过,可能一直运行未关机。
想同时查看关机时间以交叉验证:输入【last shutdown】,比对最接近reboot时间的shutdown条目,若两者间隔仅1–2分钟,基本可确认是计划内重启;若间隔数小时或无匹配shutdown,则可能是断电或内核崩溃导致的非正常启动。
用log命令检索结构化启动事件
macOS 10.12起启用统一日志系统,所有内核初始化、服务加载、驱动注册行为都被打上时间戳并结构化存储,比wtmp更细粒度,还能查到毫秒级启动时刻和失败原因。
方法一:查本次启动全过程
在终端中执行:【log show --predicate 'eventMessage contains "boot" OR eventMessage contains "startup"' --last boot】。
方法二:查过去30天所有重启事件
输入:【log show --predicate 'eventMessage contains "reboot"' --last 30d --info】,--info参数确保输出包含进程名和子系统标识,便于定位是用户触发还是系统自动更新引发的重启。
方法三:导出为桌面文本文件供离线分析
运行:【log show --predicate 'eventMessage contains "reboot"' --last 14d > ~/Desktop/reboot_history.txt】,注意不要漏掉>符号,否则命令会卡住不返回提示符。
通过系统报告与who -b交叉验证当前启动时间
谁改过系统时间?谁强制重启过?单靠一条命令容易误判,必须用三个独立来源比对。
第一步:终端执行【who -b】,返回system boot 2026-07-07 08:12,这是内核启动完成时写入/proc/utmp的原始标记,权威性最高。
第二步:点击苹果菜单→“关于本机”→右下角“系统报告…”→左侧展开“软件”→“核心”,右侧“启动时间”字段应与who -b结果一致;若出现中文格式“2026年7月7日 上午8:12”,说明系统时区设置正确。
第三步:终端输入【uptime】,观察返回的“up 14 hours, 13 minutes”,用当前时间22:25减去14小时13分,应得08:12——三者完全吻合才能确认时间未被篡改。











