一个用户无法再运行 startx

一个用户无法再运行 startx

作为 root,我将一个用户的主目录更改为另一个驱动器的软链接(当用户未登录时)。然后该用户无法再运行 startx,尽管具有相同 .xinitrc 且位于音频组中的其他用户仍然可以。更改回以前的主目录或通过 usermod 设置它没有帮助。控制台没有错误,startx 成功退出,如果记录以下信息,则仅出现此提示:

xf86EnableIOPorts: failed to set IOPL for I/O (Operation not permitted)

这是一个日志(xorg 的日志更长,但似乎没有提供更多内容)。

root@Freesia/~# startx >& /tmp/startxlog
root@Freesia/~# cat /tmp/startxlog
X.Org X Server 1.20.4
X Protocol Version 11, Revision 0
Build Operating System: Linux 5.10.0-21-amd64 x86_64 Debian
Current Operating System: Linux Freesia 4.19.0-9-amd64 #1 SMP Debian 4.19.118-2+deb10u1 (2020-06-07) x86_64
Kernel command line: BOOT_IMAGE=/boot/vmlinuz-4.19.0-9-amd64 root=UUID=27ab16fe-4180-4d31-ba99-60476076083f ro quiet
Build Date: 28 March 2023  05:03:02PM
xorg-server 2:1.20.4-1+deb10u9 (https://www.debian.org/support) 
Current version of pixman: 0.36.0
    Before reporting problems, check http://wiki.x.org
    to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
    (++) from command line, (!!) notice, (II) informational,
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/home/alex/.local/share/xorg/Xorg.1.log", Time: Tue Mar 19 17:47:00 2024
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
xf86EnableIOPorts: failed to set IOPL for I/O (Operation not permitted)
(II) modeset(0): Initializing kms color map for depth 24, 8 bpc.
xinit: connection to X server lost
    
waiting for X server to shut down (II) Server terminated successfully (0). Closing log file.

我尝试删除并重新创建具有旧主目录的用户,但无济于事。

答案1

PATH 变量包含指向用户主目录新位置的子目录的符号链接。当实际主目录更改时,这会产生循环引用(过多级别的符号链接),这显然是 startx 立即退出的原因。


(逐字摘自对原始问题的更新)

相关内容