红联Linux门户
Linux帮助

Linux下环境变量配置错误导致不能登录的及命令失效解决方案

发布时间:2016-04-09 10:22:58来源:linux网站作者:wangweimail

Linux像个羞涩又不善言辞的姑娘,走进她的世界着实需要下一番功夫才成,而且一个不小心她就死给你看,并且连个遗书都没有。


装JDK后修改/etc/profile文件配置环境变量,从网上扒下来输入到文件尾(知道为啥哥不用复制粘贴么?因为TNND这个vi编辑器实在搞不明白,期间为了顺利输入那几行字母各种百度求知的过程就不写了。),然后注销,重登录。测试Java环境成功否,结果却没有预想中的输出。看来配置错误了。然后吧我就怎么看环境变量中用冒号分隔的两个路径怎么不顺眼(Windows下是用分号分隔的,惯性思维害死人啊),于是就给改成了分号,然后再重登录,重登录,我重登录。我来个擦,为何怎么登录都是登录失败?

当时第一反映是被黑了,被人拿了权限改了密码。不过虚拟机和本机win7共享上网,还有个路由挡在外面,哪儿那么容易被黑啊。再说有能耐搞掉Linux的黑客也不会素质这么差。肯定是自己改的那个环境变量有问题。于是以这个关键点开始寻找解决方案。


百度告诉了我一件很重要的事情那就是如果/etc/profile文件配置错误的话,会导致图形界面的登录失败。先驱者们也给出了解决方案,很好理解——用字符界面登录然后修改profile文件就OK了。

在Ubuntu的登录界面按Ctrl+Alt+F1,会切换到字符界面登录。输入用户名和密码,这时候会提示一堆错误。既然可以登录,问题就基本等于解决了。于是乎尝试sudo vi/etc/profile,但提示了一堆不知所云的什么东西。全方块。明显是由于环境变量的错误导致这些基本的命令都无法使用。由于系统的命令本质上也是可执行程序,只不过有环境变量的存在使得我们不用每次都输入那冗长的路径,那么现在这种情况输入命令程序所在的绝对路径就应该可以解决问题。


查了下Linux的命令都在/usr/bin下面,这样将上面的命令修改成:

/usr/bin/sudo/usr/bin/vi /etc/profile

就可以顺利修改profile文件。修改完毕后问题解决。


总结:修改profile文件一定要慎重、慎重、再慎重。


本文永久更新地址:http://www.linuxdiyf.com/linux/19633.html