2013-12-15 84 views
1

我在CentOS上以僞分佈模式安裝CDH4時沒有任何問題,但是當我在Ubuntu 12.04上安裝它時,我收到了一些設置我的JAVA_HOME環境變量的錯誤。CDH4 JAVA_HOME Ubuntu

我安裝JDK和並JAVA_HOME使用以下行正確設置/etc/profile.d~/bash.rc

export JAVA_HOME=/usr/local/java/latest 
export PATH=${JAVA_HOME}/bin:$PATH 

我知道那是多餘的在這兩個地方去定義它,但顯然它設置在/etc/profile.d WASN」不工作。從我的用戶,當我輸入$echo $JAVA_HOME我得到:

/usr/local/java/latest 

從sudo的,我跑$ sudo -E echo $JAVA_HOME,我得到:

/usr/local/java/latest 

如果你想知道,我指定的sudo來-E選項保護我的環境。

所以我的真正的問題是,當我試圖啓動HDFS,使用以下命令:

for x in `cd /etc/init.d ; ls hadoop-hdfs-*` ; do sudo service $x start ; done 

我得到以下錯誤:

* Starting Hadoop datanode: 
Error: JAVA_HOME is not set and could not be found. 

運行與-E相同的命令選項給了我相同的結果。有沒有人有這個問題?

在此先感謝。

回答

2

經過一番研究,我找到了我的問題的答案。

我使用CDH4並以僞分佈模式安裝hadoop。

解決我的JAVA_HOME的問題,我在/etc/hadoop/conf.pseudo.mr1

創建的hadoop-env.sh文件的文件包含了一行:

export JAVA_HOME=/usr/local/java/latest 

凡在/ usr /本地/ JAVA /最新的是我的安裝路徑JAVA_HOME

+0

它的工作原理和節省我的一天。 –