在 Debian 中如何查明 Linux 机器在上次启动之前是否过热并被关闭?

lee*_*d00 5 cpu logs debian temperature

今天我正在一台远程机器上工作(我可能永远不会看到这样的机器),它挂起了,所以我告诉用户重新启动它。机器再次启动,我ssh进入了它,但是一旦我这样做,我就收到一条关于它的温度高于 60\xc2\xb0C 的消息,因此内核再次关闭了机器,当然我已与 断开连接ssh

\n\n

我们即将再次启动机器,有没有办法从日志中读取内容,表明该机器过去因太热而关闭?

\n

jim*_*mij 7

当机器过热时,在内核关闭系统之前,它会生成一条消息,存储在日志文件中。对于systemd设置,可以通过以下方式访问该文件journalctl,相关输出应如下所示:

\n\n
Jul 09 05:28:39 jjmach kernel: thermal thermal_zone0: critical temperature reached (96 C), shutting down\nJul 09 05:28:40 jjmach root[27818]: ACPI event unhandled: thermal_zone LNXTHERM:00 000000f0 00000001\nJul 09 05:28:57 jjmach kernel: thermal thermal_zone0: critical temperature reached (96 C), shutting down\nJul 09 05:28:57 jjmach lightdm[174]: Failed to get D-Bus connection\nJul 09 05:28:46 jjmach pppd[17312]: Hangup (SIGHUP)\nJul 09 05:29:00 jjmach org.a11y.Bus[265]: Reloaded configuration\nJul 09 05:28:42 jjmach systemd[1]: Stopping Daemon for power management...\n
Run Code Online (Sandbox Code Playgroud)\n\n

$SYSTEMD_PAGER因此,我们需要(通常less)或直接搜索“临界温度” :

\n\n
journalctl -g 'temperature|critical'\n
Run Code Online (Sandbox Code Playgroud)\n\n

-b -1只能在最后一次启动的消息中添加搜索。

\n\n
\n\n

话虽如此,我认为 60\xc2\xb0C 对于触发点来说确实非常低。大多数 CPU 在编译或其他资源丰富的任务期间通常会达到该温度。确保您已加载所有正确的模块(针对您的处理器)并使用sensors-detect随后的sensors命令检查热参数。

\n