几个月后(自 2020 年 4 月起),我重新启动了系统。
就在重启之前,我更新了整个系统(内核、nvidia 驱动程序等),从那时起,x 服务器无法正常启动。
我日常使用的是 XDM + i3wm 组合。
和处的日志文件/var/log/xdm.log
以及Xorg.n.log
里面的日志文件都是空的~/.local/share/xorg
。
journalctl -b
可以在此处找到最近一次启动()的输出http://sprunge.us/96m4nD
我不确定该如何处理这个问题。我试过
xorg.conf
使用从头开始重新创建文件nvidia-xconfig
- 删除并重新安装所有 nvidia+xorg 软件包
- 尝试使用 sddm/lxdm 代替 xdm
任何帮助,将不胜感激!
如果我禁用 XDM 服务并回退到 getty shellstartx
手动执行,则该命令只会显示默认输出,没有错误,但系统会冻结。
我也已启用debug-shell.service
systemctl,但Ctrl++Alt也F#没有响应,因此我无法访问调试 shell。
编辑/更新
我猜只有当我设置了多头(多显示器)时才会出现问题。当我将辅助屏幕与 GPU 断开连接时,系统开始正常响应。
重新连接屏幕后,整个系统冻结。仍然不知道为什么会发生这种情况。
答案1
我不确定如何处理这个问题。
您可以从实际阅读您提供的日志文件开始:
May 09 04:05:25 arch-hedwig systemd[1]: Starting X-Window Display Manager...
May 09 04:05:28 arch-hedwig systemd-udevd[1451]: *** stack smashing detected ***: terminated
May 09 04:05:28 arch-hedwig audit[1451]: ANOM_ABEND auid=4294967295 uid=0 gid=0 ses=4294967295 pid=1451 comm="systemd-udevd" exe="/usr/bin/udevadm" sig=6 res=1
May 09 04:05:28 arch-hedwig kernel: audit: type=1701 audit(1620513328.703:117): auid=4294967295 uid=0 gid=0 ses=4294967295 pid=1451 comm="systemd-udevd" exe="/usr/bin/udevadm" sig=6 res=1
May 09 04:05:28 arch-hedwig systemd[1]: Created slice system-systemd\x2dcoredump.slice.
May 09 04:05:28 arch-hedwig audit: BPF prog-id=24 op=LOAD
May 09 04:05:28 arch-hedwig audit: BPF prog-id=25 op=LOAD
May 09 04:05:28 arch-hedwig audit: BPF prog-id=26 op=LOAD
May 09 04:05:28 arch-hedwig systemd[1]: Started Process Core Dump (PID 1455/UID 0).
May 09 04:05:28 arch-hedwig audit[1]: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=systemd-coredump@0-1455-0 comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
May 09 04:05:28 arch-hedwig kernel: audit: type=1334 audit(1620513328.773:118): prog-id=24 op=LOAD
May 09 04:05:28 arch-hedwig kernel: audit: type=1334 audit(1620513328.773:119): prog-id=25 op=LOAD
May 09 04:05:28 arch-hedwig kernel: audit: type=1334 audit(1620513328.773:120): prog-id=26 op=LOAD
May 09 04:05:28 arch-hedwig kernel: audit: type=1130 audit(1620513328.773:121): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=systemd-coredump@0-1455-0 comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
May 09 04:05:28 arch-hedwig systemd-coredump[1456]: Process 1451 (systemd-udevd) of user 0 dumped core.
Stack trace of thread 1451:
#0 0x00007f289d501ef5 raise (libc.so.6 + 0x3cef5)
#1 0x00007f289d4eb862 abort (libc.so.6 + 0x26862)
#2 0x00007f289d543f38 __libc_message (libc.so.6 + 0x7ef38)
#3 0x00007f289d5d38ba __fortify_fail (libc.so.6 + 0x10e8ba)
#4 0x00007f289d5d3884 __stack_chk_fail (libc.so.6 + 0x10e884)
#5 0x00007f289d91ce95 sd_event_wait (libsystemd-shared-248.so + 0x1ebe95)
#6 0x00007f289d91d72c sd_event_run (libsystemd-shared-248.so + 0x1ec72c)
#7 0x00007f289d91d8c0 sd_event_loop (libsystemd-shared-248.so + 0x1ec8c0)
#8 0x00005557597ba17c n/a (udevadm + 0x1f17c)
#9 0x00005557597bab1c n/a (udevadm + 0x1fb1c)
#10 0x00007f289d8d53e0 n/a (libsystemd-shared-248.so + 0x1a43e0)
#11 0x00007f289d91be20 n/a (libsystemd-shared-248.so + 0x1eae20)
#12 0x00007f289d91c136 sd_event_dispatch (libsystemd-shared-248.so + 0x1eb136)
#13 0x00007f289d91d699 sd_event_run (libsystemd-shared-248.so + 0x1ec699)
#14 0x00007f289d91d8c0 sd_event_loop (libsystemd-shared-248.so + 0x1ec8c0)
#15 0x00005557597ae760 n/a (udevadm + 0x13760)
#16 0x00007f289d4ecb25 __libc_start_main (libc.so.6 + 0x27b25)
#17 0x00005557597ae90e n/a (udevadm + 0x1390e)
May 09 04:05:28 arch-hedwig kernel: general protection fault, probably for non-canonical address 0x710556006a5bb64d: 0000 [#1] PREEMPT SMP NOPTI
May 09 04:05:28 arch-hedwig kernel: CPU: 1 PID: 252 Comm: systemd-journal Tainted: P OE 5.12.1-arch1-1 #1
May 09 04:05:28 arch-hedwig kernel: Hardware name: System manufacturer System Product Name/ROG STRIX Z390-F GAMING, BIOS 1502 02/21/2020
May 09 04:05:28 arch-hedwig kernel: RIP: 0010:kmem_cache_alloc+0x10e/0x2e0
May 09 04:05:28 arch-hedwig kernel: Code: 48 39 f2 75 e7 48 8b 01 48 83 79 10 00 48 89 04 24 0f 84 92 01 00 00 48 85 c0 0f 84 89 01 00 00 8b 4d 28 48 8b 7d 00 48 01 c1 <48> 8b 19 48 89 ce 48 33 9d b8 00 00 00 48 8d 8a 00 02 00 00 48 0f
May 09 04:05:28 arch-hedwig kernel: RSP: 0018:ffffa809c0377d70 EFLAGS: 00010206
May 09 04:05:28 arch-hedwig kernel: RAX: 710556006a5bb625 RBX: 0000000000000050 RCX: 710556006a5bb64d
May 09 04:05:28 arch-hedwig kernel: RDX: 0000000000028401 RSI: 0000000000028401 RDI: 00000000000330f0
May 09 04:05:28 arch-hedwig kernel: RBP: ffff892880385300 R08: 0000000000000120 R09: 0000000000000000
May 09 04:05:28 arch-hedwig kernel: R10: 0000000000000010 R11: 00000000f7d1450a R12: 0000000000000dc0
May 09 04:05:28 arch-hedwig kernel: R13: ffffffffb7f7ca4a R14: ffff892887122c40 R15: 0000000000000dc0
May 09 04:05:28 arch-hedwig kernel: FS: 00007f0eccc87a40(0000) GS:ffff8937adc40000(0000) knlGS:0000000000000000
May 09 04:05:28 arch-hedwig kernel: CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
May 09 04:05:28 arch-hedwig kernel: CR2: 00007f0ecb442bf8 CR3: 000000010b87c005 CR4: 00000000003706e0
May 09 04:05:28 arch-hedwig kernel: DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
May 09 04:05:28 arch-hedwig kernel: DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
May 09 04:05:28 arch-hedwig kernel: Call Trace:
May 09 04:05:28 arch-hedwig kernel: __delayacct_tsk_init+0x1a/0x30
May 09 04:05:28 arch-hedwig kernel: copy_process+0xb63/0x1cd0
May 09 04:05:28 arch-hedwig kernel: kernel_clone+0xbb/0x400
May 09 04:05:28 arch-hedwig kernel: __do_sys_clone+0x60/0x80
May 09 04:05:28 arch-hedwig kernel: do_syscall_64+0x33/0x40
May 09 04:05:28 arch-hedwig kernel: entry_SYSCALL_64_after_hwframe+0x44/0xae
May 09 04:05:28 arch-hedwig kernel: RIP: 0033:0x7f0ecd5f1045
May 09 04:05:28 arch-hedwig kernel: Code: 48 85 ff 74 3d 48 85 f6 74 38 48 83 ee 10 48 89 4e 08 48 89 3e 48 89 d7 4c 89 c2 4d 89 c8 4c 8b 54 24 08 b8 38 00 00 00 0f 05 <48> 85 c0 7c 13 74 01 c3 31 ed 58 5f ff d0 48 89 c7 b8 3c 00 00 00
May 09 04:05:28 arch-hedwig kernel: RSP: 002b:00007fff657dad48 EFLAGS: 00000206 ORIG_RAX: 0000000000000038
May 09 04:05:28 arch-hedwig kernel: RAX: ffffffffffffffda RBX: 00007f0ecb443640 RCX: 00007f0ecd5f1045
May 09 04:05:28 arch-hedwig kernel: RDX: 00007f0ecb443910 RSI: 00007f0ecb442bf0 RDI: 00000000003d0f00
May 09 04:05:28 arch-hedwig kernel: RBP: 00007fff657dae00 R08: 00007f0ecb443640 R09: 00007f0ecb443640
May 09 04:05:28 arch-hedwig kernel: R10: 00007f0ecb443910 R11: 0000000000000206 R12: 00007fff657dadfe
May 09 04:05:28 arch-hedwig kernel: R13: 00007fff657dadff R14: 0000000000000000 R15: 00007f0ecb443640
因此,systemd 尝试启动 X-Window 显示管理器(启动 X 服务器并提供登录屏幕),检测到“堆栈粉碎”,并终止该过程。
这意味着您的更新在驱动程序中引入了某些严重失败的东西,或者 systemd 过于急于终止某些东西。
尝试将与之前版本相关的所有 X 降级(您有更新日志可以帮助您)。看看它是否有效。如果有效,则可能是您升级的内容中存在一些错误。
相反,尝试将 systemd 降级到您之前的版本。如果成功,systemd 现在会将 X 驱动程序中的有效行为检测为不良行为,因此请针对 systemd 提交错误报告。