hadoop-env.sh什么时候会在hadoop中执行

When hadoop-env.sh will be executed in hadoop

我已将 hadoop-env.sh 文件从默认位置移动到 /etc/hadoop 位置。我不确定是否需要在 ~/.bashrc 文件中放置一个条目来执行这个文件。如果我需要输入一个条目,你能告诉我吗?

hadoop-env.sh在hadoop-daemon.sh(start-all.sh-->start-dfs.sh-->hadoop-daemon.sh中被调用).以下是片段。

if [ -f "${HADOOP_CONF_DIR}/hadoop-env.sh" ]; then
. "${HADOOP_CONF_DIR}/hadoop-env.sh"
fi

您必须在 hadoop-env.sh 中设置 JAVA_HOME 路径以及所需的其他环境变量。所以它必须是 called/executed 在你所有的恶魔开始之前。话虽如此,如果您要将其从 HADOOP_CONF_DIR(默认为 HADOOP_HOME/conf)移出,那么您必须在 bashrc.sh 中调用它或将您的路径嵌入到 hadoo-daemon.sh 中在上面的代码片段中调用你的 hadoop-env.sh。