解決ubuntu在/etc/profile中配置環境變數後失效的問題
阿新 • • 發佈:2019-02-14
昨天設定了tomcat+nginx+session共享:nginx +多個tomcat實現負載均衡和session共享(完整教程,圖文並茂).
1、配置在系統變數裡的環境變數不生效了?
因為之前是通過安裝包安裝的jdk,在/etc/profile
中中設定的環境變數,結果今天發現jdk又沒了。
2、解決一、重新載入/etc/profile
然後我重新執行
#切換成root使用者
sudo su root
# 載入環境變數
source /etc/profile
#檢視java版本
java -version
發現,java又出來了,但是我不能每天都重新執行一次profile吧。
3. 解決二、設定環境變數到使用者下面
一通百度發現:在/etc/profile下配置的環境變數只能在終端有效,如果想讓持續有效,需要把環境變數設定到你的使用者設定。修改之前在/etc/profile裡的配置到/home
目錄下的user的.bashrc
裡配置。
註釋proile裡的環境變數
vi /etc/profile
#使剛剛的配置生效
source /etc/profile
不知道為啥,我註釋之後,重新使環境變數生效,但是依然還是能夠顯示java的版本號。為了方便測試,我開了另一個終端,發現java又沒有了。我們在新的終端上配置環境變數到使用者下面,重新測試一下。
開啟新的終端
在使用者目錄下配置.bashrc
# 進入當前的使用者目錄下
cd ~
vi .bashrc
新增環境變數到使用者目錄下
# 配置jdk的環境變數
export JAVA_HOME=/usr/java/jdk/jdk1.8.0_181
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
3. 啟用使用者下的環境變數
使環境變數生效
# 進入當前終端所在的home目錄
cd ~
# 使配置生效
source ./.bashrc
#檢視java版本
java -version
我們發現配置已經生效了
4. 測試有效性
我們再開一個終端,檢測一下是否會像之前/etc/profile
一樣失效
我們發現,新開一個終端後,root使用者下面的peofile已經生效了,但是切換到ubuntu使用者下,卻不行。我們可以在ubuntu的home目錄下做相同的配置即可。配置同上面root一樣。生效也一樣,所以就不舉例了