Ubuntu中输入startx并重启后登录界面无限循环问题
今天,在学习了编程两个多月后遇到的第一个菜鸟技术问题,解决后有一种兴奋和迷茫。
言归正传,说说遇到的问题和解决方案。
在Ubuntu14.04中,按照linux的传统做法(基于redhat),在root下输入了startx并enter,结果出现了一个没有任何图标的界面,没有任何命令可以输入,于是选择重启,那么问题来了。
重启后进入登录界面,但是正确输入密码后还是输入密码的无限循环,纠结、、、Google、百度后发现原来有好多菜鸟也有同样的问题,于是对此问题进行了探讨学习。
先说解决方案:
(1)ctrl+alt+F1(或2、3、4、5、6),进入控制台界面
(2)然后输入用户名和密码(这一步骤很容易忽略,而出现错误)
(3)cd / 然后进入到根目录下
(4)rm -rf .Xaut* 使用rm命令删除由于startx命令产生的多余文件
(5)ctrl+alt+F7 返回到初始界面,输入密码登录
因为:在tty执行startx会生成的一个文件,ubuntu的登陆器是lightdm,这个登陆器发现你home目录里有这个文件就会死循环,让你无限输入密码。
startx 是用来启动X windows服务的。在Ubuntu下慎用,会崩溃。具体的原理还不是很清楚。
注:此方案并非原创,借鉴于很多资料,并不能联系到原作者,故此网址附上网址,希望不会出现侵权问题
(1)http://blog.csdn.net/ww_bin/article/details/46461675
(2)http://www.2cto.com/os/201405/297792.html
(3)http://blog.sina.com.cn/s/blog_63237e350100ojkr.html
为了研究问题出现的原因,在Linux社区 作者:hding99的文章(http://www.linuxidc.com/Linux/2012-12/76404.htm)中得到了一些关于运行级别init答案:
运行级别
传统上,linux有几种不同的运行级别,包括如下几种:
# 0 - 停机
# 1 - 单用户模式
# 2 - 多用户,没有 NFS
# 3 - 完全多用户模式(标准的运行级)
# 4 – 系统保留的
# 5 – X11 (x window)
# 6 - 重新启动
系统启动后处于哪一种级别由init读取/etc/inittab文件中的缺省级别设置来确定,一半图形界面的系统是进入级别3。
但是ubuntu与传统的不太一样,默认情况下是找不到/etc/inittab文件的,而且运行级别也有差别,具体分这样几个级别:
# 0 – 关闭系统
# 1 – 单用户模式
# 2~5 – 完整的多用户模式
# 6 – 重新启动
也就是说,默认情况下级别2、3、4、5都是一样的,同时系统的默认级别设定也不是在inittab文件中,而是写在/etc/init/rc- sysinit.conf文件中。打开此文件,可以找到下面一句:
env DEFAULT_RUNLEVEL=2
这表明系统当前默认是进入级别2。
对此的一点感想:不同的平台如ubuntu、redhat等虽然都是基于linux内核的linux系统,但是,还是有所差别,还有待深入研究。
注:学习编程的第一篇博客随感,如果哪一天被大神看到,还请指点一二、、、哈哈哈
日期:2016年8月20日