我在数据中心有一台 linux centos 7 服务器。服务器突然重启,但我们没有重启服务器,数据中心的人也声称他没有重启服务器。
现在我想知道服务器是如何突然重启的?
是否有人通过命令提示符运行 linux 命令重启,或者是否有人直接按下数据中心的重启开关。
我检查了 /var/log/message 但未能得出任何结论。
请指导我如何通过日志或通过命令识别其硬启动???
答案1
检查最后一个命令的输出,以确保它不是由您的某个用户/管理员重新启动的,它还将为您提供启动的精确时间。
下面是一个快速的一行程序,它将列出启动事件之前的最后 100 个:
BOOT_DATE=$(last | grep boot | head -1 | awk '{print $6, $7}') ; last | grep "$BOOT_DATE" | grep -A 100 "boot"
输出:
reboot system boot 3.10.0-693.21.1. Wed Mar 21 13:54 - 15:23 (9+00:28)
root pts/0 <HIDDEN> Wed Mar 21 13:53 - 13:54 (00:00)
reboot system boot 3.10.0-693.21.1. Wed Mar 21 13:51 - 13:54 (00:02)
root pts/0 <HIDDEN> Wed Mar 21 13:50 - 13:50 (00:00)
reboot system boot 3.10.0-693.21.1. Wed Mar 21 13:45 - 13:51 (00:05)
root pts/0 <HIDDEN> Wed Mar 21 13:43 - 13:44 (00:00)
有了准确的时间,就可以在消息中搜索该时间之前的任何事件。
如果您怀疑系统是通过按下按钮重新启动的,请编辑 /etc/sysconfig/acpid 并输入以下内容:
OPTIONS="-l"
这将使 acpid 在关闭/重启系统之前记录按钮按下情况。遗憾的是,默认情况下不启用此功能,因此您将看不到当前事件的事件。
最后,如果系统断电/电缆被扯断,系统内部就无法知道。