我的 Ubuntu18.04桌面每天死机约 1 次。这种情况发生在我浏览网页或使用桌面应用程序时,而不是在启动时。当它发生时,鼠标指针仍会自由移动,但点击或按键对我的系统没有影响,直到我进行硬重启。
我怎样才能阻止这种情况发生?
以下是一些系统信息:
selah@selah-Precision-Tower-5810:~$ uname -a
Linux selah-Precision-Tower-5810 4.15.0-20-generic #21-Ubuntu SMP Tue Apr 24 06:16:15 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
selah@selah-Precision-Tower-5810:~$ lspci | grep VGA
03:00.0 VGA compatible controller: NVIDIA Corporation GM107GL [Quadro K2200] (rev a2)
selah@selah-Precision-Tower-5810:~$ sudo lshw -c video
*-display
description: VGA compatible controller
product: GM107GL [Quadro K2200]
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:03:00.0
version: a2
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress vga_controller bus_master cap_list rom
configuration: driver=nouveau latency=0
resources: irq:31 memory:f6000000-f6ffffff memory:e0000000-efffffff memory:f0000000-f1ffffff ioport:e000(size=128) memory:f7000000-f707ffff
请注意,我在安装 16.04 时也遇到了类似的问题: Ubuntu 桌面在正常使用过程中偶尔会挂起
答案1
我正在处理这个错误:https://bugs.freedesktop.org/show_bug.cgi?id=93629
为了解决这个问题,我安装了 Nvidea 驱动程序来代替 Ubuntu 默认附带的 Noveau 驱动程序。
我使用此命令检查了我当前的驱动程序并查看了以下configuration:
行:
selah@selah-Precision-Tower-5810:~$ sudo lshw -c video
*-display
description: VGA compatible controller
product: GM107GL [Quadro K2200]
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:03:00.0
version: a2
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress vga_controller bus_master cap_list rom
configuration: driver=noveau latency=0
resources: irq:32 memory:f6000000-f6ffffff memory:e0000000-efffffff memory:f0000000-f1ffffff ioport:e000(size=128) memory:f7000000-f707ffff
我使用以下命令找到了推荐的驱动程序:
selah@selah-Precision-Tower-5810:~$ ubuntu-drivers devices
== /sys/devices/pci0000:00/0000:00:02.0/0000:03:00.0 ==
modalias : pci:v000010DEd000013BAsv000010DEsd00001097bc03sc00i00
vendor : NVIDIA Corporation
model : GM107GL [Quadro K2200]
driver : nvidia-driver-390 - distro non-free recommended
driver : nvidia-340 - distro non-free
driver : xserver-xorg-video-nouveau - distro free builtin
然后我使用以下命令安装了推荐的驱动程序:
sudo apt-get install nvidia-driver-390
sudo reboot
最后,我检查该命令的输出sudo lshw -c video
是否包含以下行。configuration: driver=nvidia latency=0
我如何验证我正在处理这个错误:
启用持久日志记录sudo mkdir /var/log/journal
并重新启动
然后,当我的计算机下次冻结时,我重新启动并运行sudo journalctl --list-boots
以查找上次崩溃的启动的 ID。
selah@selah-Precision-Tower-5810:~$ sudo journalctl --list-boots
-5 3021d713946d42b1b27234bc25641386 Fri 2018-05-11 15:34:14 EDT—Fri 2018-05-11 16:56:17 EDT
-4 0c2cf6756ca64856bd6650e24f33e26f Fri 2018-05-11 16:57:00 EDT—Tue 2018-05-15 11:04:40 EDT
-3 897d56f3c8bd4f89aa53817531388d08 Tue 2018-05-15 11:06:03 EDT—Tue 2018-05-15 11:31:54 EDT
-2 fd4181e77dfb46ae9222c0fe98e7ec40 Tue 2018-05-15 11:33:54 EDT—Tue 2018-05-15 11:43:20 EDT
-1 553c94fad1bc499897ba5c17e794ba89 Tue 2018-05-15 11:44:03 EDT—Mon 2018-06-18 10:49:32 EDT
0 0f79a064b05444b0840e55edb05d10a7 Mon 2018-06-18 10:50:24 EDT—Mon 2018-06-18 11:06:18 EDT
我的 ID 是倒数第二个长哈希字符串,标记为 -1。使用此字符串,我运行sudo journalctl -b 553c94fad1bc499897ba5c17e794ba89
我查找并发现如下错误消息SCHED_ERROR 0a [CTXSW_TIMEOUT]
`