linux下误操作startx命令后无法登录

  1. 问题描述
  2. 分析原因
  3. 解决办法

问题描述

由于误操作了startx命令,导致输入正确地用户名和密码后无法进入系统,无限循环在登录界面。

分析原因

stratx 命令:用来启动X windows服务的。在Ubuntu下慎用,原理还不是很清楚,运行后在/home目录下自动生成.Xauthority 目录,导致出现上面的问题。

进不去的原因:在tty执行startx会生成的一个文件,ubuntu的登陆器是lightdm,这个登陆器发现你家目录里有这个文件就会死循环,让你无限输入密码。原来是之前误操作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使用认证

解决办法

1,在登录界面按Ctrl+Alt+F3 切换到控制台登陆,这里要登录普通用户,而不是root

2,命令:cd~

3,命令:rm -rf .Xaut* #注意空格大小写rm_-rf_.Xaut*

4,最后:按Ctrl+Alt+F7回到登陆界面,输入密码正常登陆。

欢迎转载,欢迎错误指正与技术交流,欢迎交友谈心

文章标题:linux下误操作startx命令后无法登录

文章字数:421

本文作者:Brain Cao

发布时间:2017-06-03, 19:30:19

最后更新:2020-03-12, 18:44:12

原始链接:https://braincao.cn/2017/06/03/linux-startx-login/

版权声明:本文为博主原创文章,遵循 BY-NC-SA 4.0 版权协议,转载请保留原文链接与作者。

目录
×

喜欢请收藏,疼爱就打赏