问题描述:(参考链接,这里把它复制过来,但是他的解决方案,亲测失败!!!)
给自己以前的电脑捣鼓了一个linux,然后给他搭配一些环境,然后就误操作了startx命令,导致一直在登录页面,输入正确地用户名和密码也还是进不去,真是醉了,重启了N次,并没有什么用处。。。
具体的现象为:
在紫红色的登录界面输入登录密码后,一闪(其实大概就是黑屏了一秒钟),然后就又回到了登录页面,始终无法进入系统。。。
分析原因:
经过一番搜索,得出了如下的原因:原来是之前误操作startx(其实也不算误操作吧,就是在环境配置的某一步,随意敲了一个startx,然后就醉了)之后,主目录下的.Xauthority文件的拥有者变成了root,从而用户在登录的时候,无法读取.Xauthority文件,就会报timeout错误。
说明:Xauthority,是startx脚本记录文件。Xserver启动时,读文件~/.Xauthority,读入对应其display的记录。当一个需要显示的客户程序启动调用XOpenDisplay()也读这个文 件,并把找到的magic code 发送给Xserver。
当Xserver验证这个magic code正确以后,就同意连接啦。观察startx脚本也可以看到,每次startx运行,都在调用xinit以前使用了xauth的add命令添加了一个新的记录到~/.Xauthority,用来这次运行X使用认证
解决办法:(来自运行startx后Ubuntu密码正确进不去的问题,这里做了整理,直接看这里吧!)
步骤如下
1,在登录界面按Ctrl+Alt+F3 切换到控制台登陆,这里要登录普通用户,而不是root
2,命令:cd~
3,命令:rm -rf .Xaut* #注意空格大小写rm_-rf_.Xaut*
4,最后:按Ctrl+Alt+F7回到登陆界面,输入密码正常登陆。
顺便说说:
进不去的原因是什么?
在tty执行startx会生成的一个文件,ubuntu的登陆器是lightdm,这个登陆器发现你家目录里有这个文件就会死循环,让你无限输入密码。
stratx 命令是用来干啥的?
startx 是用来启动X windows服务的。在Ubuntu下慎用,原理还不是很清楚。
运行后在/home目录下自动生成.Xauthority 目录,导致出现上面的问题。
网友评论