我在远程位置有几台 Ubuntu Server 8.04 机器。每隔几个月左右,其中一个就会停止响应并需要重新启动。从查看我的日志文件来看,我的所有进程似乎都运行良好,直到某个时候一切都停止了。
我怀疑这是硬件问题,但我什至不知道如何开始查明问题。是否有任何旨在追踪此类问题的诊断工具或技术?
我知道这是一个相当笼统的问题,但我希望得到一个笼统的答案。
我在远程位置有几台 Ubuntu Server 8.04 机器。每隔几个月左右,其中一个就会停止响应并需要重新启动。从查看我的日志文件来看,我的所有进程似乎都运行良好,直到某个时候一切都停止了。
我怀疑这是硬件问题,但我什至不知道如何开始查明问题。是否有任何旨在追踪此类问题的诊断工具或技术?
我知道这是一个相当笼统的问题,但我希望得到一个笼统的答案。
Memtest将是第一个呼叫点,但如果可以的话,请让中心在下次崩溃时插入控制台。如果内核正在运行,它应该输出一些东西到屏幕上。
过去我也遇到过类似的问题,结果与热量有关。改善循环并增加一两个风扇帮助了很大的时间。
此外,请确保您已在磁盘上启用了 SMART,并查看其中一个是否已处于最后阶段。
你可能想安装 munin 来监控它们,看看发生了什么。
连接另一台机器并配置串行控制台以获取所有内核消息等。如果这是内核恐慌或其他一些灾难性问题,您会在那里看到它。还建议监测温度和运行 memtest,特别是如果控制台在车轮脱落之前没有显示任何异常时。
使用 Zabbix 之类的工具加入全面的远程监控解决方案。监控系统资源使用的各个方面,以及操作系统可用的任何硬件统计信息(例如,风扇速度、温度等)。这样,当您的系统下一次发生故障时,您将有许多数据点可以查看以了解问题所在。
使用这种方法,您可能会发现,例如,您有一个进程失去了对 RAM 分配的控制,将系统推入交换状态,并导致内存不足杀手开始通过您正在运行的进程,从而离开机器反应迟钝。没有监控,你不可能知道这一点。
提供给实际上任何肯定有效的信息的信息太少。
很高兴知道您如何定义“停止”响应?只是停止响应的 ssh 还是其他一些服务?如果控制台仍在响应,有什么想法吗?
重新启动后机器重新联机后日志文件中的任何痕迹?
无论如何,很少有选项可以让您继续收集信息: