登录黑屏,gnome-shell吃100%的CPU

从通常的Ubuntu登录屏幕,我点击我的名字,输入我的密码,然后按ENTER键。 屏幕变黑……并保持黑色。 我无法访问我的桌面。

如果我从另一台计算机上SSH并运行htop,我可以看到/usr/bin/gnome-shell占用100%的单核心。 除了gnome-shell之外,系统完全空闲。 htop中的平均负载正好是1.00。

htop显示100%的gnome-shell

今天早些时候我把它留了一个多小时,但没有变化。 从那以后我也尝试重启,但结果相同。 这个桌面以前工作正常,不知道我搞砸了什么。 我该如何调试正在发生的事情?

一时兴起,因为我看到了对nvidia驱动程序的一些更新,我试图切换到nouveau。 我不知道我是否这样做了,但它解决了这个问题。 这是我跑的:

 sudo apt-get purge nvidia-\* sudo apt-get autoclean sudo apt-get autoremove sudo reboot 

此时,一切似乎都在恢复,看着“软件和更新”的“附加驱动程序”选项卡,我看到这台计算机现在使用的是Nouveau而不是NVIDIA。

我的建议是首先尝试使用新用户登录,您可以通过SSH创建用户:

 sudo adduser testuser 

尝试使用该新用户登录。 如果gnome-shell仍然占用100%并且无法正常工作,那么该软件包可能存在问题,可能是损坏的磁盘可能导致/usr/bin/gnome-shell二进制文件被破坏,你可以通过运行:

 sudo debsums -s 

如果它打印任何东西,那么这些包文件已经损坏(或由于某种原因由用户/程序修改,它们不应该是)

最后,如果您能够以测试用户身份登录但无法使用现有帐户登录,请尝试将主目录中的这些文件重命名为其他文件并登录以缩小导致问题的文件范围:

  • ~/.config
  • ~/.gconf
  • ~/.local

我有同样的问题,并在启动时禁用登录修复它。

  • 转到设置>详细信息>用户
  • 单击解锁,输入密码
  • 启用自动登录

然后重新安装nvidia驱动程序,但请注意,如果您退出当前会话并再次登录,您将再次遇到黑屏问题(至少从我发生的事情)。 锁定屏幕和重新登录工作正常。