需配置java_home、hadoop_home和path三个环境变量:先设java_home指向jdk根目录,再设hadoop_home为hadoop安装绝对路径,最后将$hadoop_home/bin和sbin加入path;windows还需放置匹配版本的winutils.exe并设权限。
配置 hadoop 运行所需的环境变量,核心是让系统能识别 hadoop 命令、定位安装路径,并正确关联 java 环境。关键变量有三个:`java_home`、`hadoop_home` 和 `path`。配置顺序和位置稍有差异,但逻辑一致。
确保 JAVA_HOME 已正确设置
Hadoop 依赖 Java 运行,必须先确认 `JAVA_HOME` 存在且指向 JDK 安装根目录(不是 JRE):
- 执行
java -version和echo $JAVA_HOME,两者都应有合理输出 - 若未设置,编辑
~/.bashrc(用户级)或/etc/profile(系统级),添加:export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk(路径按实际 JDK 路径调整) - 保存后运行
source ~/.bashrc生效
设置 HADOOP_HOME 指向安装根目录
该变量告诉 Hadoop 自己在哪,所有内部脚本都依赖它:
- 假设 Hadoop 解压在
/opt/hadoop-3.3.0,则添加:export HADOOP_HOME=/opt/hadoop-3.3.0 - 务必使用绝对路径,不能含
~或相对符号 - 同样写入
~/.bashrc或/etc/profile,再source刷新
把 Hadoop 的可执行目录加入 PATH
否则终端输入 hadoop 会提示“command not found”:
- 在同个配置文件中追加:
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin -
bin/包含hadoop、hdfs、yarn等客户端命令sbin/包含start-dfs.sh、stop-yarn.sh等集群管理脚本 - 顺序建议放在
$PATH末尾,避免覆盖系统已有命令
Windows 用户额外注意 winutils.exe
在 Windows 上运行 Hadoop 必须补全这个组件,否则多数操作会报错:
- 下载与 Hadoop 版本匹配的
winutils.exe(例如 hadoop-3.3.0 对应 winutils for 3.3.0) - 将其放入
%HADOOP_HOME%\bin\目录下(如C:\hadoop\bin\winutils.exe) - 设置环境变量
HADOOP_HOME=C:\hadoop,并确保该路径已加入PATH - 还需配置系统临时目录权限(用管理员身份运行
winutils.exe chmod 777 /tmp/hadoop)











