Ubuntu下循环登录问题解决

造成这种问题的大多原因是由于环境变量引起的,也很好解决,删掉错误的环境变量就好。

1.什么是环境变量

环境变量是系统自执行程序时默认去指定目录下查找的路径,在windows和ubunt中都要设置环境变量,当然如果不怕麻烦每次输入绝对路径也不是不可行的。

在ununtu中“/bin”、“/sbin”、“/usr/bin”、“/usr/sbin”、“/usr/local/bin”等路径已经在系统环境变量中了,如果可执行文件在这几个标准位置,在终端命令行输入该软件可执行文件的文件名和参数(如果需要参数),回车即可。

如果不在标准位置,文件名前面需要加上完整的路径。不过每次都这样跑就太麻烦了,一个“一劳永逸”的办法是把这个路径加入环境变量。命令 “PATH=$PATH:路径”可以把这个路径加入环境变量,但是退出这个命令行就失效了。要想永久生效,需要把这行添加到环境变量文件里。有两个文件可选:“/etc/profile”和用户主目录下的“.bash_profile”,“/etc/profile”对系统里所有用户都有效,用户主目录下的“.bash_profile”只对这个用户有效。

2.认识几个和环境变量有关的文件:

/etc/profile —— 此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置;
/etc/environment —— 在登录时操作系统使用的第二个文件,系统在读取你自己的profile前,设置环境文件的环境变量;
/etc/bashrc —— 为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取;
~/.profile —— 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,它设置一些环境变量,执行用户的.bashrc文件;
~/.bashrc —— 该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该文件被读取;
例如:

修改profile文件:

#vi /etc/profile 
在里面加入: 
export PATH="$PATH:/opt/aaaa/bbbb/bin"

让环境变量立即生效需要执行如下命令:

#source /etc/profile

 修改.bashrc文件:

# vi /root/.bashrc 
在里面加入: 
export PATH="$PATH:/opt/aaaaa/bbbbb/bin"

PATH的值是一系列目录,当您运行一个程序时,Linux在这些目录下进行搜寻。用以下命令可以看到PATH的值。,后两种方法一般需要重新注销系统才能生效,最后可以通过echo命令测试一下: 
# echo $PATH 
就可以打印出PATH的所有路径,LINUX执行程序时会在这些目录下去寻找。

3.环境变量设置的注意事项。

“PATH=PATH:路径1:路径2:...:路径n”,意思是可执行文件的路径包括原先设定的路径,也包括从“路径1”到“路径n”的所有路径。当用户输入一个一串字符并按回车后,shell会依次在这些路径里找对应的可执行文件并交给系统核心执行。那个“PATH:路径1:路径2:...:路径n”,意思是可执行文件的路径包括原先设定的路径,也包括从“路径1”到“路径n”的所有路径。当用户输入一个一串字符并按回车后,shell会依次在这些路径里找对应的可执行文件并交给系统核心执行。那个“PATH”表示原先设定的路径仍然有效,注意不要漏掉。某些软件可能还有“PATH”以外类型的环境变量需要添加,但方法与此相同,并且也需要注意“$”。

在/etc目录下的环境变量是输入密码后进入桌面就要执行的,这里面的环境变量设置错误会导致进入不了桌面的情况发生。

例如我对/etc/profile下的命令做了如下添加:export PATH="/usr/lib/python3.5" 就出现这种情况,正确的形式应该是export PATH="$PATH/usr/lib/python3.5"  错误的方式将导致之前的所有环境变量的设置无效,将被新的PATH代替,这也将进一步导致后边解决方案中进入命令模式下输入的指令无效。

4.重复登录解决办法。

ctrl+Alt+F1进入命令行模式如下

输入用户名后键入密码后如下

这个界面和桌面版的shell就一样了,继续。

此时输入SHELL下的命令无效,这就是因为/etc目录下的环境变量设置错误,找不到命令所致,但显然已经给了提示(已标注),输入绝对路径即可。

因为我们的环境变量设置错误,那么就只需要删除错误的环境变量即可,打开/etc/profile文件需要root权限,那么用绝对路径使用VI打开删除即可。

打开并删除错误的环境变量保存退出。

ctrl+alt+F7回到桌面登录即可。

  • 6
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值