启动hadoop出现以下错误:
[root@localhost hadoop]# ./sbin/start-dfs.sh
Starting namenodes on [localhost]
ERROR: Attempting to operate on hdfs namenode as root
ERROR: but there is no HDFS_NAMENODE_USER defined. Aborting operation.
Starting datanodes
ERROR: Attempting to operate on hdfs datanode as root
ERROR: but there is no HDFS_DATANODE_USER defined. Aborting operation.
Starting secondary namenodes [localhost.localdomain]
ERROR: Attempting to operate on hdfs secondarynamenode as root
ERROR: but there is no HDFS_SECONDARYNAMENODE_USER defined. Aborting operation.
2025-05-27 20:13:06,371 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
这个时候我们只需要修改hadoop-env.sh文件即可
1、先切换到hadoop下的etc的hadoop中去修改
cd /usr/local/hadoop/etc/hadoop/
2、再ls查看文件
ls
可以看到以下内容:
3、再去修改hadoop-env.sh
vi hadoop-env.sh
4、按 i 进入插入模式插入以下内容:
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root
这个随便找个地方加就可以了
5、按 esc 退出编辑,再按 :wq 保存即可