我最近将 Arch 系统升级到内核 4.9.8。重新启动后,我无法隔离图形目标。dmesg
给了我这个:
[ 54.537319] gnome-shell[756]: segfault at 44 ip 00007f312c42b311 sp 00007ffc7c141a10 error 4 in libmutter.so.0.0.0[7f312c355000+12c000]
[ 56.011442] NVRM: Your system is not currently configured to drive a VGA console
[ 56.011443] NVRM: on the primary VGA device. The NVIDIA Linux graphics driver
[ 56.011443] NVRM: requires the use of a text-mode VGA console. Use of other console
[ 56.011444] NVRM: drivers including, but not limited to, vesafb, may result in
[ 56.011444] NVRM: corruption and stability problems, and is not supported.
[ 56.012100] nvidia-modeset: Allocated GPU:0 (GPU-26bd7466-7209-5400-b8c1-c33539ed7a9f) @ PCI:0000:01:00.0
[ 56.275134] snd_hda_codec_hdmi hdaudioC1D0: HDMI: invalid ELD data byte 16
[ 57.023579] gnome-session-f[896]: segfault at 0 ip 00007f7caeb46ce9 sp 00007fff40fd2170 error 4 in libgtk-3.so.0.2200.8[7f7cae864000+6fa000]
[ 64.715141] snd_hda_codec_hdmi hdaudioC1D0: HDMI: invalid ELD data byte 0
看起来有一些事情可能会导致这个问题,但我认为解决根本原因,无论它是什么,都会解决其他问题。我尝试过以其他方式使用 Xorg,包括使用startx
和启动gdm
服务。我知道段错误通常无法由用户修复,但我想获得对此的第二意见,并看看其他人是否有相同的问题。谢谢!
到目前为止我所查看/尝试过的(不过我还没有降级任何软件包): https://bugs.archlinux.org/task/51908
https://bbs.archlinux.org/viewtopic.php?id=218580
https://bbs.archlinux.org/viewtopic.php?pid=1467820#p1467820
答案1
我尝试的第一件事是删除然后安装 gnome 和所有依赖项pacman -Rnsc gnome gdm
。这不起作用并删除了很多我需要的软件包。那好吧。
我决定重点关注错误消息的 NVRM 部分,因为显卡驱动程序是错误产生的最低级别的操作,所以解决这个问题,解决所有问题,对吧? nvidia 驱动程序似乎是导致问题的原因,作为开源爱好者,我决定尝试一下该nouveau
驱动程序。删除 nvidia 驱动程序有点痛苦,但是当我将其删除并安装 nouveau 并重新启动后,哇!一个图形用户界面!现在完美了吗?不。主要组件缺失,并且分辨率设置为 4:3 显示器。但是,通过查看(很长),/var/log/pacman.log
我目前正在通过浏览日志文件并选择看起来很重要的软件包(gnome-control-center 等)来重新安装丢失的组件。我希望这对处于同样情况的人有所帮助!
另外,这可能会产生错误报告,但我不确定是否应该引起 Arch 软件包维护者或 freedesktop.org 人员的注意。如果您觉得有必要提交一份文件,则堆栈跟踪的链接位于该问题的评论中。