gpt4 book ai didi

hadoop - Hadoop:直接调用时,start-dfs.sh不起作用

转载 作者:行者123 更新时间:2023-12-02 19:52:52 25 4
gpt4 key购买 nike

启动hadoop时,我遇到了一个非常奇怪的问题。
当我使用绝对路径start-dfs.sh调用/usr/local/hadoop/etc/hadoop/sbin/start-dfs.sh时,它启动就没有任何问题。
但是当我将hadoop添加到我的环境变量中时:

export HADOOP_HOME=/usr/local/hadoop
export CLASSPATH=$($HADOOP_HOME/bin/hadoop classpath):$CLASSPATH
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
我想直接使用 start-dfs.sh调用它。但是当我这样开始时,它会抛出错误:
20/10/26 16:36:49 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Incorrect configuration: namenode address dfs.namenode.servicerpc-address or dfs.namenode.rpc-address is not configured.
Starting namenodes on []
localhost: Error: JAVA_HOME is not set and could not be found.
localhost: Error: JAVA_HOME is not set and could not be found.
Starting secondary namenodes [0.0.0.0]
0.0.0.0: Error: JAVA_HOME is not set and could not be found.
20/10/26 16:36:56 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
我想知道是什么问题?我已经将所有Java主页和 core-site.xml配置正确。如果我直接从bash启动它,为什么它不起作用?

最佳答案

似乎您需要将JAVA_HOME环境变量设置为Java包在(我想)Linux发行版中的位置。为此,您必须找到java安装的路径。
为此,您可以在终端上使用以下命令,如here所示:

find /usr -name java 2> /dev/null
它将输出一个或多个路径(取决于您的系统上有多少个Java版本),如下面的屏幕截图所示:
output of the command
您可以选择一种版本(或仅选择一个版本)并复制其路径。
接下来,要设置JAVA_HOME的环境变量及其路径,您需要复制从上面的输出中获得的路径,并在文本编辑器上剪掉它的最后一个目录(又名 /java目录)。
对于我的系统,我在系统中选择了Java的第三个版本,因此我进入了 .bashrc文件,并在底部添加了这两行(请注意,在变量的设置中,路径如何在 /bin目录之前结束,而在设置时路径在 /bin目录之后结束):
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-i386
export PATH=$PATH:/usr/lib/jvm/java-11-openjdk-i386/bin/
因此, .bashrc文件的底部如下所示:
bottom lines of the .bashrc file on a text editor
为了进行测试,它无需脚本的完整路径即可工作(这也适用于 start-all.shstop-all.sh脚本):
screenshot of the desired result

关于hadoop - Hadoop:直接调用时,start-dfs.sh不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64540414/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com