5

clouderaのcdh4-0.0ディストリビューションを使用しています。以下のコマンドを使用してデーモンを起動することはできません。

>start-dfs.sh
Starting namenodes on [localhost]
hduser@localhost's password: 
localhost: mkdir: cannot create directory `/hduser': Permission denied
localhost: chown: cannot access `/hduser/hduser': No such file or directory
localhost: starting namenode, logging to /hduser/hduser/hadoop-hduser-namenode-canberra.out
localhost: /home/hduser/work/software/cloudera/hadoop-2.0.0-cdh4.0.0/sbin/hadoop-daemon.sh: line 150: /hduser/hduser/hadoop-hduser-namenode-canberra.out: No such file or directory
localhost: head: cannot open `/hduser/hduser/hadoop-hduser-namenode-canberra.out' for reading: No such file or directory
4

1 に答える 1

1

タールボールを使用しているようですか?

次のように、構成ファイルのデフォルトのHADOOP_LOG_DIR場所をオーバーライドするように設定してください。etc/hadoop/hadoop-env.sh

export HADOOP_LOG_DIR=/path/to/hadoop/extract/logs/

その後、再試行sbin/start-dfs.shすると、機能するはずです。

パッケージ化された環境では、start-stopスクリプトは、同じenv-varを介して、サービスのタイプごとに一意の場所を提供するように調整されているHADOOP_LOG_DIRため、発生しているのと同じ問題は発生しません。

代わりにパッケージを使用している場合は、これらのスクリプトを使用せず、代わりに次のようにしてください。

service hadoop-hdfs-namenode start
service hadoop-hdfs-datanode start
service hadoop-hdfs-secondarynamenode start
于 2012-09-10T11:49:21.977 に答える