如何诊断硬性 Linux 崩溃?

Geo*_*ams 8 motherboard linux cpu crash power-supply

我有一台自制的 Linux 服务器(Ubuntu 12.04.5 LTS、Intel i5-3570K、8GB RAM),主要用作邮件和 Web 服务器。它仅在控制台模式下运行(无 GUI)。我会时不时地通过 SSH 连接到它,几乎从不从控制台操作它。它往往可以正常工作很多天,甚至几周,但有时会在没有警告的情况下严重崩溃。当我说“严重崩溃”时,我的意思是 PC 突然变得完全没有响应:

  • 它不留下任何日志条目
  • 它不会发出“糟糕”、内核恐慌消息或核心转储
  • 它不会在屏幕上显示任何消息。
  • 它不响应任何键盘或鼠标输入(NumLock 灯也对该键无响应)
  • SSH 无法访问
  • 机箱的复位开关不工作

唯一的解决办法是按住机箱电源按钮直到它关闭,然后重新启动它。

当然这会尖叫“硬件问题”,但哪个组件最有可能?Memtest86+ 没有显示任何错误,所以这似乎离开了三巨头——主板、CPU 或电源。(PC 没有超频,传感器最后一条消息(崩溃前)表明没有过热或风扇问题)

  1. 这些组件中的哪一个可能是问题,是否存在统计可能性?

  2. 我在上面用粗体显示了最后一个标准,因为这对我来说似乎很不寻常。通常即使发生严重崩溃,PC 仍然可以通过机箱的重置开关重新启动。这是否表明 PSU 或主板有问题?(在电源开关保持4-5秒以关闭PC仍然工作)

  3. 有没有一种方法可以测试它们,而无需简单地一次订购一个新零件,直到我有信心(在几周没有崩溃之后)问题已解决?

感谢任何能提供帮助的人。

Law*_*ceC 0

您能做的最好的事情就是查看锁定时间附近的日志,看看是否可以将锁定与任何类型的任何系统事件关联起来。这是一件很难做到的事情,而且您可能无法通过这种方式找到任何可能是直接原因的东西。

诊断硬件问题的一些提示:

最容易消除的是固件问题/设置:

  • 确保您的系统具有制造商提供的最新固件/BIOS 更新。

  • 确保所有存储设备也更新至最新固件。

  • 尝试禁用固件/BIOS 中的任何 CPU 或其他电源管理选项。

  • 如果您不使用虚拟化,请尝试在固件中禁用它。

RAM 问题可能会导致硬锁定,即使它们没有在内存测试中显示出来。这可能是非常间歇性的事情。实际服务器具有 ECC RAM,可防止罕见/暂时的 RAM 错误导致问题,但如果这是非服务器 PC,则没有此功能。如果可以的话尝试更换内存。

墙壁电源的电源问题可能会导致此类问题。如果您真的想运行家庭服务器,您应该有一个备用电池,它也可以过滤掉瞬态电源问题。

如果此后问题仍然存在,请尝试更换电源或使用其他电源。

然后,假设主板出现问题并考虑更换。