最近在ubuntu系统下跑lanenet的代码,在想着怎么用作者的代码将正视图转换成鸟瞰图得到其yml文件的时候不小心电脑死机了,重启之后就出现了无限循环在登录输入密码界面。
文件权限
在网上查了下,大部分都是说文件权限问题,主目录下的.Xauthority文件拥有者变成了root,从而以用户登陆的时候无法都取.Xauthority文件
解决方案:
(1)在图形界面ctrl+alt+F2进入tty模式
(2)使用正确的用户名和密码登录(在此需要注意的是ubuntu默认开机没有开启小键盘,因为在输入密码阶段你不看不到你输入的是什么,所以按照平时的做法输入密码就会出现login incorrect,所以在输入账户名的时候就把大小写和数字键盘调试好)
(3)在home下查看该文件权限:
$ ls -al .Xauthority
但是我自己的电脑出现的确实一堆乱码,看来是最基本的/bin/ls文件都找不到,看来是环境变量失效了,执行以下命令:
$ PATH=/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
再次执行ls命令
$ ls -al .Xauthority
但是在我电脑上依旧显示又乱码,嗯?怎么和大家遇到的情况不一样。
就在我不断重启,不断输密码的过程中,我发现了一个问题。
出现转机
我发现我每次重启之后,ls命令总是无法识别,又要重新设置环境变量,我们知道linux启动的时候是默认会初始化环境变量的,即unbuntu默认环境变量中应该会有这个值。看来问题是出在环境变量上了,突然想到我在运行别人的代码的时候用vim编辑器改过/etc/profile里的值。迅速开机进入tty模式,键入命令
$ sudo vim /etc/profile
找到自己新加的那一条环境变量,删除掉,:wq 保存退出,ctrl+alt+F1回到图形界面,输入密码,成功进入系统!!!
问题总结
- linux系统文件非常敏感,修改时需特别注意
系统出问题了,极大的可能是修改了系统文件,因此,一个良好的习惯是系统文件修改前对文件进行备份,然后再进行修改,出问题后直接回滚往往可以马上解决问题。 - 出现问题时,一般的百度或者谷歌可以找到大致的解决方案,但是可能又和自己的具体问题有所出入,而且网上大都是一种说法,很难找到真正的解决方案。
- 定位准确或许能让我们少走很多弯路。