在 Linux 上备份 HDFS(Hadoop Distributed File System)配置,通常是指备份 Hadoop 的配置目录和相关元数据。下面按最常见、最安全的方式说明。
HDFS 配置一般位于 Hadoop 的安装目录中:
$HADOOP_HOME/etc/hadoop/
常见路径示例:
/usr/local/hadoop/etc/hadoop/
/opt/hadoop/etc/hadoop/
主要配置文件包括:
hdfs-site.xmlcore-site.xmlhadoop-env.shlog4j.propertiesmapred-site.xml、yarn-site.xmlcd $HADOOP_HOME/etc
tar -czf hadoop-conf-backup-$(date +%F).tar.gz hadoop
示例:
tar -czf /backup/hadoop-conf-2026-01-21.tar.gz hadoop
mkdir -p /backup/hdfs-conf
cp $HADOOP_HOME/etc/hadoop/hdfs-site.xml \
$HADOOP_HOME/etc/hadoop/core-site.xml \
/backup/hdfs-conf/
⚠️ 非常重要:配置文件 ≠ HDFS 数据
在 hdfs-site.xml 中:
<property>
<name>dfs.namenode.name.dir</name>
<value>/data/hadoop/dfs/name</value>
</property>
hdfs dfsadmin -safemode enter
hdfs dfsadmin -saveNamespace
然后拷贝元数据:
cp -r /data/hadoop/dfs/name /backup/name-$(date +%F)
退出 Safe Mode:
hdfs dfsadmin -safemode leave
DataNode 一般不需要备份数据,但可备份配置:
cat $HADOOP_HOME/etc/hadoop/hdfs-site.xml | grep dfs.datanode.data.dir
#!/bin/bash
BACKUP_DIR=/backup/hadoop
DATE=$(date +%F)
mkdir -p $BACKUP_DIR
tar -czf $BACKUP_DIR/hadoop-conf-$DATE.tar.gz $HADOOP_HOME/etc/hadoop
加入 crontab:
0 2 * * * /root/backup_hadoop.sh
tar -xzf hadoop-conf-2026-01-21.tar.gz -C $HADOOP_HOME/etc
| 备份内容 | 是否必须 | 方法 |
|---|---|---|
| HDFS 配置文件 | ✅ | tar / cp |
| NameNode 元数据 | ✅(生产) | safemode + cp |
| DataNode 数据 | ❌ | 一般不需 |
如果你愿意,可以告诉我:
我可以给你更精确的备份方案。