Linux配置环境变量后不能登录

今天,在我的电脑上装上了JDK ,配置好环境变量后。发现,登录的时候,不能登录(即在登录不到几秒的时间


后又重新的回到了登录界面!)


搞得我很郁闷!


查找错误后才发现,原来,ubuntu 再启动的时候读取配置文件,并设置环境变量的顺序是这样的:


1、在登录时,操作系统定制用户环境时使用的第一个文件就是  /etc/profile  ,此文件为系统


的每个用户设置环境信息,当用户第一次登录时,该文件被执行。


2、在登录时操作系统使用的第二个文件是  /etc/environment  ,系统在读取你自己的profile


前,设置环境文件的环境变量。


3、在登录时用到的第三个文件是.profile文件,每个用户都可使用该文件输入专用于自己使


用的shell信息,,该 文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户


的.bashrc文件。/etc/bashrc:为每一个运行bash shell的用户执行此文件.


当bash shell 被打开时,该文件被读取.


因此,查看我的配置文件后发现!原来错误就出现在这里,这是我原来的.profile配置文件


export JAVA_HOME=/usr/jdk1.6.0_21
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib


因为,系统启动时会先读取/etc/profile , 然后读取 /etc/environment ,最后才是.profile 文


件。而在/etc/environment 文件中也设置有环境变量PATH ,系统读取后慧净环境变量设置


为: (如图所示)


解决 ubuntu 配置环境变量后不能登录完美解决 ubuntu 配置环境变量后不能登录 - wangan11 - 博才AnAn


这时,如果你在.profile 中也设置了环境变量PATH ,就会覆盖原来/etc/environment 中设置


的环境变量PATH !


所以,问题就出在了这一步!


那么解决办法就是,在设置.profile 的环境变量时,在PATH=的最前面加上 $PATH


修改后的.profile 文件如下:


解决 ubuntu 配置环境变量后不能登录完美解决 ubuntu 配置环境变量后不能登录 - wangan11 - 博才AnAn


export JAVA_HOME=/usr/jdk1.6.0_21
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
export CLASSPATH=$CLASSPATH:.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib


至此,问题完美解决!

你可能感兴趣的:(Linux配置环境变量后不能登录)