在 Linux 上,HDFS 的配置路径修改位置取决于你用的是哪种 Hadoop 发行版和部署方式,但本质都绕不开 hadoop-env.sh 和 hdfs-site.xml。下面按常见场景说明。
Hadoop 配置目录一般是:
$HADOOP_HOME/etc/hadoop/
常见文件:
hadoop-env.sh → 环境变量(Java 路径、日志路径等)core-site.xml → 默认文件系统(fs.defaultFS)hdfs-site.xml → HDFS 数据目录、NameNode / DataNode 路径yarn-site.xml → YARN(非 HDFS 核心)在 hdfs-site.xml 中:
<property>
<name>dfs.namenode.name.dir</name>
<value>/data/hadoop/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/data/hadoop/dfs/data</value>
</property>
改完后:
hdfs namenode -format # 仅首次或清空集群时
start-dfs.sh
编辑:
/etc/profile
# 或
~/.bashrc
export HADOOP_HOME=/opt/hadoop
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
生效:
source /etc/profile
在 hadoop-env.sh:
export JAVA_HOME=/usr/java/jdk1.8.0_381
core-site.xml:
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
| 发行版 | 配置路径 |
|---|---|
| Apache Hadoop | $HADOOP_HOME/etc/hadoop |
| CDH | /etc/hadoop/conf |
| HDP | /etc/hadoop/conf |
| 容器 / Docker | 挂载卷或用 HADOOP_CONF_DIR |
hdfs getconf -confKey dfs.namenode.name.dir
hdfs getconf -confKey dfs.datanode.data.dir
如果你能告诉我:
我可以直接给你精确命令和文件位置。