启动start-dfs.sh时出错
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIyZuBnL4cTOzUzMxATM4AzNwEjMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
// HDFS格式化后启动dfs出现以下错误:
[[email protected] 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.
解决方法:
进入/hadoop/sbin路径下:
向start-dfs.sh,stop-dfs.sh两个文件顶部添加以下参数
// 需要添加的代码
#!/usr/bin/env bash
HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
向start-yarn.sh,stop-yarn.sh顶部也需添加如下参数
下面展示一些
内联代码片
。
#!/usr/bin/env bash
YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root
重启reboot后,重新启动时,出现
// 错误的内容
[[email protected] sbin]# ./start-dfs.sh
WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER. Using value of HADOOP_SECURE_DN_USER.
Starting namenodes on [localhost]
上一次登录:四 7月 8 09:58:24 CST 2021从 192.168.116.1pts/0 上
localhost: ERROR: JAVA_HOME is not set and could not be found.
Starting datanodes
上一次登录:四 7月 8 09:59:15 CST 2021pts/0 上
localhost: ERROR: JAVA_HOME is not set and could not be found.
Starting secondary namenodes [localhost]
上一次登录:四 7月 8 09:59:16 CST 2021pts/0 上
//解决方法,首先找到Hadoop-env.sh这个文件,/usr/local/soft/是我Hadoop的安装目录
vim /usr/local/soft/hadoop/etc/hadoop/hadoop-env.sh
//添加
export JAVA_HOME=/usr/java/jdk1.8.0_202
//每个人的jdk版本不同,安装路径也不一样,注意看自己的
//:wq保存
重新启动可以成功