ubuntu 16.04 登陆不进桌面
问题描述:
系统软件升级之后,重启,在登陆界面输入密码后,回车,闪现一次黑屏和一些代码,然后又重新回到登陆界面。
原因分析:
有两种可能:
1、主目录下的.Xauthority文件拥有者变成了root,从而以用户登陆的时候无法都取.Xauthority文件。从而造成用户登陆不进入系统桌面。
说明:Xauthority,是startx脚本记录文件。Xserver启动时,读文件~/.Xauthority,读入对应其display的记录。当一个需要显示的客户程序启动调用XOpenDisplay()也读这个文 件,并把找到的magic code 发送给Xserver。
当Xserver验证这个magic code正确以后,就同意连接啦。观察startx脚本也可以看到,每次startx运行,都在调用xinit以前使用了xauth的add命令添加了一个新的记录到~/.Xauthority,用来这次运行X使用认证
2、系统软件升级后与Nvidia的驱动冲突。
解决方法:
针对可能一:
将.Xauthority的拥有者改为登陆用户。
操作过程:
开机后在登陆界面按下shift + ctrl + F1进入tty命令行终端登陆后输入:
$ cd ~
$ sudo chown hp:hp .Xauthority (若为其他用户名修改成相应的名称即可)
然后再次输入:
ls .Xauthority -l
成功后显示如下:
-rw------- 1 hp hp 80 1月 27 10:41 .Xauthority
此时拥有者已经变为用户。按下shift + ctrl + F7切换回图形登陆界面登陆即可。
参考:
https://blog.csdn.net/u010925447/article/details/72236387
针对可能二:
卸载NVIDIA驱动,重新安装 unity 桌面。
开机后在登陆界面按下shift + ctrl + F1进入tty命令行终端登陆后输入:
sudo apt-get update
sudo apt-get install --reinstall ubuntu-desktop
sudo apt-get install unity
# 如果是nvidia显卡,则卸载驱动,ravi的电脑是 nvida显卡
sudo apt-get remove --purge nvidia*
sudo reboot #重启
参考: