我在一台功能强大的台式电脑上运行最新版本的 Ubuntu 20.04 LTS。它大部分时间都运行良好,但偶尔我的系统会随机遇到这种奇怪的死机,下面将详细介绍。有些日子里,它每隔一小时就会发生一次,这很容易导致数据丢失,非常烦人。我在同一台电脑上运行 Microsoft Windows 时从未发生过这种情况(但我不经常使用该操作系统)。
以下是更详细的情况描述。我正在电脑上随意工作,没有运行任何复杂的计算。突然间,显示屏冻结,包括鼠标光标。如果我正在播放任何音频,它会继续短循环运行几秒钟,然后完全停止。此时,Magic SysRq 键将不起作用!我必须按住电源按钮关闭电脑。不会生成自动错误报告。
如何开始分析这个问题的原因?这非常困难,因为有两个原因:1. 它是间歇性的,2. 系统完全没有响应,不允许任何命令输入。
尽管这个问题的标题相当笼统,但我还是很感激一般和具体的建议。
以下是我已尝试过的方法:我在后台的终端模拟器中运行这两个命令sudo dmesg -Tw
。当发生冻结时,它们都没有产生任何输出。tail -f /var/log/syslog
答案1
看起来英特尔遇到了与我使用基于 Ryzen 的笔记本电脑时遇到的同样的问题。
一般信息:C 状态是 CPU 的省电模式,启用后可降低功耗,但进入或退出此状态时似乎存在错误。请参阅错误日志(是的,非常古老)。C 状态越高,CPU“休眠”的时间就越长。
尝试以下操作:/etc/default/grub
更改行
GRUB_CMDLINE_LINUX_DEFAULT="quiet"
到
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_idle.max_cstate=5"
然后运行update-grub
并重新启动。如果仍然不起作用,请将最大 C 状态减少到 1。请注意,这意味着更多的功耗。
还有一个2016 年的错误修复脚本该文件声称只能禁用 C6(不要直接运行它,请先阅读它)。请查看是否可以找到脚本中列出的这些文件/sys/devices/system/cpu/cpuX/cpuidle/stateY/CZ*-BYT
并检查其内容。