“系统正在关闭以重新启动”

Tho*_*mas 13 logs reboot

我通过 tty 连接到 beagleboard,突然看到这条消息:

Broadcast message from root@arm
        (unknown) at 11:40 ...

The system is going down for reboot NOW!
[  143.036193] Restarting system.
Run Code Online (Sandbox Code Playgroud)

系统是 Ubuntu 12.10。有什么地方可以找到系统决定关闭的原因吗?

更新:更多信息

  • 这实际上一直发生,电路板每 1 到 5 分钟重新启动一次。
  • 我确保在启动时没有程序或守护程序运行。
  • Restarting在任何文件中都找不到/var/log
  • syslog重新启动之前,始终有一个Feb 10 09:20:00 arm rsyslogd: [origin software="rsyslogd" swVersion="5.8.6" x-pid="317" x-info="http://www.rsyslog.com"] exiting on signal 15.

phe*_*mer 11

我跟踪这个的方法是替换实用程序haltshutdown脚本。

首先在以下位置创建一个脚本/bin/fakehalt

#!/bin/bash
exec >>/tmp/fakehalt.log 2>&1
date
echo "CMD=$0 PID=$$"
ps -ef --forest
echo '========'
Run Code Online (Sandbox Code Playgroud)

然后安装它:

chmod a+x /bin/fakehalt
mv /sbin/halt /sbin/halt.orig
ln -s /bin/fakehalt /sbin/halt
mv /sbin/shutdown /sbin/shutdown.orig
ln -s /bin/fakehalt /sbin/shutdown
Run Code Online (Sandbox Code Playgroud)

这将在/tmp/fakehalt.log每次调用时创建一个日志文件。它将记录它被称为(haltshutdown)它自己的 PID 的名称,然后是当时所有进程的树图。

这应该为您提供所有必要的信息来追踪它。只需查看ps树并找到所谓的脚本。


/sbin/reboot应该是到/sbin/halt. 如果不是,那么也更换它。


如果这仍然没有捕获它,请更换/sbin/init(因为它也可用于重新启动系统)。但这很危险,就像系统重新启动一样,它不会正常启动。