如何调试自动关闭的 X 会话

如何调试自动关闭的 X 会话

我目前在 X 下运行某个特定应用程序时,出现了非常奇怪的“崩溃”现象。我说“崩溃”是因为据我所知,应用程序(HandBrake 的 ghb)和 X 都没有崩溃。我通过在 gdb 下运行验证了两者,它们似乎都自行退出了。

查看我的系统日志,没有崩溃的迹象,只是我的 X 会话关闭了:

Jan 22 12:16:03 danny dbus[340]: [system] Activating via systemd: service name='org.freedesktop.hostname1' unit='dbus org.freedesktop.hostname1.service'
Jan 22 12:16:03 danny systemd[1]: Starting Hostname Service...
Jan 22 12:16:04 danny dbus[340]: [system] Successfully activated service 'org.freedesktop.hostname1'
Jan 22 12:16:04 danny systemd[1]: Started Hostname Service.
Jan 22 12:16:05 danny lightdm[27656]: pam_unix(lightdm:session): session closed for user alex

我的 .xsession-errors 仅显示 X 消失的后果:

[../../i3-4.13/i3bar/src/xcb.c:1074] ERROR: X11 connection was closed unexpectedly - maybe your X server terminated / crashed?
[27849:27849:0122/121605:ERROR:x11_util.cc(87)] X IO error received (X server probably went away)
[libi3] ../../i3-4.13/libi3/font.c Using X font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1

显然,ghb 正在做的事情是导致某些东西严重损坏,但很难说清楚是什么。鉴于没有崩溃或核心转储,调试此问题的最佳方法是什么?有没有办法窥探 X 消息并找出发送到服务器的最后一个命令?这可能是一个损坏的工具包吗?

相关内容