描述
正常开机,从 sddm 登录用户进入 KDE Plasma,黑屏无反应。正常情况应该是显示加载界面(如下),然后进入桌面。
通过 Ctrl + Alt + F3 可进入 tty,命令行终端正常。重启后切换其他用户登录,可以正常进入 KDE 桌面。
系统为 Arch Linux,KDE Plasma 版本为 6.3.1,Wayland 协议。
排查过程
通过 sudo pacman -Syyu
更新系统,重启后无果。可见与系统没有更新无关。
开机过程正常,怀疑不是硬件和系统的问题。试了下从 sddm 登录其他用户,竟然成功进入桌面,且运行正常,那能确定
- 与显卡驱动无关;
- 系统正常,KDE Plasma 正常;
- 估计与黑屏用户的家目录某个配置文件有关。
上网搜索,看到 登陆kde黑屏最终解决方案 - 代码先锋网,尝试删除 ~/.config
下与 Plasma 相关的配置文件,无果。又找到 Troubleshooting/Black Screen - KDE UserBase Wiki,看到最后的 startx
命令,想到试试在 tty 下登录黑屏用户执行 startplasma-wayland
命令,结果成功启动 Plasma 并进入桌面。于是怀疑问题不在 Plasma 上,而在从 sddm 启动 Plasma 的过程上。
上网搜索,定位到 sddm 的日志文件 ~/.local/share/sddm/wayland-session.log
,其上赫然写着
/home/user/.profile: line 1: /home/user/.local/share/../bin/env: No such file or directory
好家伙,再进 ~/.profile
一看,多了一行
. ~/.local/share/../bin/env
破案了,原因是从 sddm 登录时加载了 .profile
,而这一行使得 sddm 报错,没有继续引导进入 KDE 桌面,从而陷入黑屏。
解决方案
检查 sddm 日志文件 ~/.local/share/sddm/wayland-session.log
,若显示
/home/user/.profile: line 1: /home/user/.local/share/../bin/env: No such file or directory
进入 ~/.profile
删除引起错误的一行
. ~/.local/share/../bin/env
重启后再登录即可。
吐槽
折腾了一个晚上,没想到一个简单的操作即可解决。不知道是哪个程序进 .profile
拉屎了……