我創建了一個文件/etc/profile.d/java.sh
,其中包括(其中包括)代碼行:export JAVA_HOME=/usr/java/jdk1.6.0_30
。然而,當我通過SSH登錄或重新啓動的Linux的Centos 6.2服務器,我總是看到:JAVA_HOME的默認值似乎覆蓋了由/etc/profile.d/java.sh設置的值。
[[email protected] /etc/profile.d]# echo $JAVA_HOME
/usr/local/jdk
這是一個新安裝的服務器,所以沒有太多別的做。看起來,java.sh文件在重新啓動或SSH登錄時執行,但是,JAVA_HOME的值以某種方式被默認值/usr/local/jdk
覆蓋。 /usr/local
甚至沒有目錄jdk
。
任何想法如何解決這個問題?需要爲所有用戶設置JAVA_HOME的值(在java.sh中完成)。
更新1:
我查了/ etc/profile文件和搜索的文本jdk
以及JAVA
也不被發現。我還檢查了/root/.bash_profile,它顯示如下:
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export PATH
另外,如果我的源java.sh,一切都得到正確設置。但是如果我重新啓動服務器,JAVA_HOME會返回到/usr/local/jdk
。
您是否找到解決方案?由於存在任何地方的任何問題,我真的很困難。 – Sina 2014-08-06 02:44:26
剛剛找到罪魁禍首。請參閱下面的答案 – Sina 2014-08-06 02:57:08