我有这台旧电脑,我一直在尝试运行 Ubuntu,但它一直死机。Windows 运行完美,在高负载下正常运行数天没问题。它不是特定于 19.10,一直在尝试使用早期版本的 Ubuntu 并获得相同的结果。
冻结似乎是随机的。有时我可以毫无问题地玩一个小时的火箭联赛,几分钟后机器会在桌面闲置或重新启动后 2 分钟冻结。我唯一可以确定的是,我找不到更频繁地触发它的方法。
当它冻结时,它是一个硬冻结。与计算机的 SSH 会话终止。键盘无响应,无法转到另一个控制台或打开/关闭大写锁定灯。
memtest没有错误。没有高温。升级到最新的主板bios,没有变化。一直在跟踪 dmesg、内核和系统日志,但没有看到任何特别之处。
Hardware:
Intel i5 760
Gigabyte P55-USB3
Geforce GTX 670 2GB (Running 435 driver)
4x 4GB DDR3 1600
2x Samsung 830
IDE DVD/RW
Corsair HX750
我不知道如何进一步分析这个问题,因为我从来没有看到任何错误/警告,而且我找不到触发问题的方法。
有什么方法可以让我看到更多细节吗?
根据@K7AAY 的要求添加信息
我没有启用休眠,除非它默认启用。
free -m
total used free shared buff/cache available
Mem: 16004 1130 13883 3 990 14582
Swap: 2047 0 2047
我解决了这个问题。
这个系统有轻微的超频,我已经忘记了。超频本身没有问题,bios中的设置100%稳定。
但!现代 Linux 内核通过 Intel_idle 驱动程序覆盖 Intel C 状态的 bios/uefi 设置。因此,应该从 bios 设置的 C 状态设置实际上在 Linux 中被覆盖。
这就是导致随机冻结的原因,因为只要 C 状态没有改变,系统就会完全稳定。这意味着它在重负载下可以完美运行,但是一旦系统开始在空闲和轻负载之间切换,C 状态就会大幅波动并挂起系统。
我的解决方案是通过内核参数锁定 grub 中的 C 状态。GRUB_CMDLINE_LINUX_DEFAULT="安静的 intel_idle.max_cstate=1"