故障排除Linux服务器重启?

我刚刚build立了一个Linux服务器,debian squeeze,2.6.32-5-amd64,过去一周它重启了三次,一天两次。 没有停电,我知道(它运行在一个UPS),并没有在系统日志中的错误,除了在启动几个预计之外做清除条目在ext4日记由于不洁的关机。

我可以采取哪些步骤来确定重新启动的原因? 有没有办法让它挂起而不是重新启动,所以我可以复制堆栈跟踪或什么东西离开屏幕? 任何方式来增加debugging信息,或得到它转储的东西到磁盘,或者什么?

这可能是一些硬件问题; 最常见的是失败的RAM和过热。 您可以安装mbmon来监视主板和CPU温度; 并运行memtest86+来检查你的RAM和CPUcaching。

有一个机会是“内核恐慌”,内核“oops”消息在重新启动之前发送到控制台。 内核可以configuration为重启“恐慌”或继续。 检查:

 cat /proc/sys/kernel/panic 

如果不是0,可以把0放在那里(你可以直接写入文件,通过/etc/sysctl.conf(通常在启动时parsing)或者使用sysctl工具),这应该停止重新启动。 如果它已经是0,那么重启不是由内核恐慌造成的。

检查last的输出。 寻找重新启动。 尝试将其与谁login谁,谁拥有超级用户权限相关联。 如果不是用户,则可能会遇到电源/散热问题或某些types的内核恐慌问题。 尽量排除一个一个。