0

我是新手,我正在尝试找到解决此问题的方法。为了在 Ubuntu 15.10 上设置 Hadoop 2.7.2,我遵循了这个教程

http://idroot.net/tutorials/how-to-install-apache-hadoop-on-ubuntu-14-04/

当我启动“hdfs namenode format”时,我继续收到此错误错误:无法找到或加载主类 org.apache.hadoop.hdfs.server.namenode.NameNode

这是 bashrc 内容

export JAVA_HOME=/usr/lib/jvm/java-8-oracle

export HADOOP_INSTALL=/usr/local/hadoop

export PATH=$PATH:$HADOOP_INSTALL/bin

export PATH=$PATH:$HADOOP_INSTALL/sbin

export HADOOP_MAPRED_HOME=$HADOOP_INSTALL

export HADOOP_COMMON_HOME=$HADOOP_INSTALL

export HADOOP_HDFS_HOME=$HADOOP_INSTALL

export YARN_HOME=$HADOOP_INSTALL

export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_INSTALL/lib/native

export HADOOP_OPTS="-Djava.library.path=$HADOOP_INSTALL/lib"

谁能帮我解决这个(我认为是愚蠢的)问题?

非常感谢卡马

4

4 回答 4

1

我也有这个错误。对我来说,这只是因为 /share/hadoop/yarn/ 文件夹中的某些文件丢失了,这是由于hadoop.tar.gz 下载不完整造成的,仍然可以通过命令行抽象出来。可以帮到你,加油。

于 2017-05-04T01:39:29.533 回答
0

此问题背后的一个原因可能是用户定义的HDFS_DIR环境变量。这是由脚本拾取的,例如以下行libexec/hadoop-functions.sh

HDFS_DIR=${HDFS_DIR:-"share/hadoop/hdfs"}
...
if [[ -z "${HADOOP_HDFS_HOME}" ]] &&
   [[ -d "${HADOOP_HOME}/${HDFS_DIR}" ]]; then
  export HADOOP_HDFS_HOME="${HADOOP_HOME}"
fi

解决方案是避免定义环境变量HDFS_DIR

在我的情况下,使用sudo帮助但出于错误的原因:权限没有问题,但环境变量有问题。

于 2020-02-04T22:54:30.197 回答
0

使用灰烬脚本解决了问题。主要区别在于使用 open jdk 而不是 oracle jre。

谢谢您的帮助!

于 2016-02-01T20:03:38.517 回答
0

首先确保目录namenodedatanode已经存在于hdfs-site.xml文件中指定的位置。您可以使用该命令mkdir来创建它们。

然后尝试使用格式化namenode

hdfs namenode -format

或者

/usr/local/hadoop/bin/hdfs namenode -format

请注意连字符。


我对 hadoop 的 bashrc 配置:

#HADOOP VARIABLES START
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"
export HADOOP_CLASSPATH=${JAVA_HOME}/lib/tools.jar
#HADOOP VARIABLES END
于 2016-01-30T20:14:25.033 回答