大约 2 到 3 周前,我的 Ubuntu 13.04 桌面在使用 Chrome 一段时间后经常死机。鼠标可以移动,但对鼠标或键盘没有任何反应。我必须按下电源按钮才能关闭机器并重新启动。有时,症状并不是完全冻结,而是所有文件都变为只读,这使得任何操作都不起作用。所有 Chrome 标签都会显示错误消息。每次我在 Chrome 中使用新版本的 google 地图时,Ubuntu 很快就会死机。
虽然我实际上从未想到浏览器程序会冻结整个系统,但现在我相信罪魁祸首是 Chrome。如果我不使用Chrome,比如使用Firefox,那么系统运行正常。我首先以为我的硬盘有问题。我尝试修复它并使用磁盘实用程序进行扩展智能测试,没有发现任何错误。
我也在网上搜索了一下,发现有人问类似的问题,但没有得到很好的解决方案。有人认为这与显卡驱动程序有关。但直到两三周前,我一直在 Ubuntu 上顺利使用 Chrome。
有关我的系统的一些信息:
乌班图13.04 内核版本:3.8.0-30-generic CPU:Intel core i7 2600K(使用其集成显卡)
更新:echo 0 | sudo dd of=/sys/module/i915/parameters/semaphores
按照goldilocks的建议使用似乎首先解决了问题。
第二天,问题又来了:
(1) 第一个问题是我无法启动Ubuntu,因为找不到根分区/dev/mapper/ubuntu(LVM分区)。我尝试了几次重新启动,有时我可以进入Ubuntu,但没有任何可用的,甚至vi一个文本文件显示命令中的输入/输出错误。最终,我使用恢复模式来检查磁盘并修复软件包。然后我就可以像往常一样启动进入 Ubuntu。
(2) 然而,Chrome 再次冻结 Ubuntu。帖子开头描述的最初症状又出现了。该命令echo 0 | sudo dd of=/sys/module/i915/parameters/semaphores
似乎只能延长 Chrome 正常工作的时间。然而,最终,半小时或一小时后,系统将冻结或所有内容再次变为只读。如果我使用谷歌地图,那么几分钟后,系统就会死机。然后我就得用蛮力关闭机器。重新启动到 Ubuntu 后,文件 /sys/module/i915/parameters/semaphores 的内容更改回“-1”,而不是我之前编写的“0”。使用grep i915_hangcheck_hung /var/log/*
没有发现崩溃时间的相关错误。我还怀疑问题与Chrome中的flash插件有关,因此我将flash插件从adobe的flash插件切换为Chrome内置的flash插件。但问题仍然存在。
所以我现在不确定这是否 100% 是 Chrome 造成的。现在我使用Firefox,看看系统是否稳定。
答案1
您可能正在使用 i915 驱动程序来集成视频,我敢打赌它与此错误有关:
https://bugzilla.kernel.org/show_bug.cgi?id=58381
由于“冻结”是内核恐慌。尝试:
grep i915_hangcheck_hung /var/log/*
看看会发生什么。您可以尝试在 Chrome 中关闭“可用时使用硬件加速”(在“高级设置...系统”下)。
还有一个建议这里(上面的错误似乎被认为是这个错误的重复,但是上面的错误有一个更好的涉及 chrome 的初始报告)尝试一下这个:
echo 0 | sudo dd of=/sys/module/i915/parameters/semaphores
如果你这样做,su root
那就更简单了:
echo 0 > /sys/module/i915/parameters/semaphores
请注意,其中的文件/sys
不是磁盘上的真实文件--系统文件系统是一个内核接口。读取文件是对内核实时信息的请求,写入文件是设置参数的实时请求。因此,这不是在重新启动后仍然存在的永久配置。您可以在引导脚本中包含 echo 命令,或者在 grub.conf 中添加内核命令行参数,如第二个错误报告链接所示:
i915.semaphores=0
这将在启动时设置该参数。