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,它应该工作。

在打包的环境中,启动-停止脚本被调整为通过相同的HADOOP_LOG_DIRenv-var 为每种类型的服务提供唯一的位置,因此它们不会出现您看到的相同问题。

如果您使用的是包,请不要使用这些脚本,而只需执行以下操作:

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