Warning: $HADOOP_HOME is deprecated解决方法

本文介绍了启动Hadoop1.2.1时出现的警告信息及其原因,并提供了两种解决方案:一是注释掉配置文件中的相关代码;二是通过设置环境变量来抑制警告。建议采用第二种方案。

启动Hadoop时报了一个警告信息,我的系统是CentOS,安装的Hadoop版本是hadoop1.2.1,具体警告信息如下:

[root@m1 hadoop-1.2.1]# bin/start-all.sh 
Warning: $HADOOP_HOME is deprecated.

网上的说法是因为Hadoop本身对HADOOP_HOME做了判断,具体在bin/hadoop和bin/hadoop-config.sh里。在hadoop-config.sh里有如下的配置:

if [ "$HADOOP_HOME_WARN_SUPPRESS" = "" ] && [ "$HADOOP_HOME" != "" ]; then
  echo "Warning: \$HADOOP_HOME is deprecated." 1>&2
  echo 1>&2
fi

对于这个警告问题,解决方法如下:
1. 注释掉hadoop-config.sh里的上面给出的这段if fi配置(不推荐
2. 在当前用户目录下的 .bash_profile 里增加一个环境变量:
export HADOOP_HOME_WARN_SUPPRESS=1
注:修改完 .bash_profile 后需要执行 source 操作使其生效
用到的命令:

cd ~
vi .bash_profile //使用Vi命令修改.bash_profile
source .bash_profile //修改完.bash_profile后需要执行source操作使其生效

转载于:https://www.cnblogs.com/wuyida/p/6300490.html

[root@slave1 ~]# cd $HADOOP_HOME [root@slave1 hadoop-3.1.4]# 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 [master] 上一次登录:六 11月 8 01:49:01 CST 2025:0 上 WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER. Using value of HADOOP_SECURE_DN_USER. master: WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER. Using value of HADOOP_SECURE_DN_USER. master: namenode is running as process 12174. Stop it first. Starting datanodes ERROR: Refusing to run as root: ROOT account is not found. Aborting. Starting secondary namenodes [master] 上一次登录:六 11月 8 01:51:22 CST 2025pts/0 上 WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER. Using value of HADOOP_SECURE_DN_USER. master: WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER. Using value of HADOOP_SECURE_DN_USER. master: secondarynamenode is running as process 12365. Stop it first. WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER. Using value of HADOOP_SECURE_DN_USER. [root@slave1 hadoop-3.1.4]# sbin/start-yarn.sh Starting resourcemanager 上一次登录:六 11月 8 01:51:26 CST 2025pts/0 上 Starting nodemanagers 上一次登录:六 11月 8 01:51:32 CST 2025pts/0 上 slave2: ssh: connect to host slave2 port 22: No route to host slave3: ssh: connect to host slave3 port 22: No route to host [root@slave1 hadoop-3.1.4]# sbin/mr-jobhistory-daemon.sh start historyserver WARNING: Use of this script to start the MR JobHistory daemon is deprecated. WARNING: Attempting to execute replacement "mapred --daemon start" instead. [root@slave1 hadoop-3.1.4]# jps 3425 NodeManager 3713 Jps 11486 -- process information unavailable [root@slave1 hadoop-3.1.4]# ^C [root@slave1 hadoop-3.1.4]# jps 3425 NodeManager 4164 Jps 11486 -- process information unavailable [root@slave1 hadoop-3.1.4]# # 从root用户切换到普通用户localhost [root@slave1 hadoop-3.1.4]# su - localhost 上一次登录:六 11月 8 01:29:03 CST 2025从 slave1pts/3 上 [localhost@slave1 ~]$ # 进入Hadoop目录 [localhost@slave1 ~]$ cd $HADOOP_HOME [localhost@slave1 hadoop-3.1.4]$ [localhost@slave1 hadoop-3.1.4]$ # 先停止所有服务(避免残留进程) [localhost@slave1 hadoop-3.1.4]$ sbin/stop-all.sh WARNING: Stopping all Apache Hadoop daemons as localhost in 10 seconds. WARNING: Use CTRL-C to abort. WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER. Using value of HADOOP_SECURE_DN_USER. Stopping namenodes on [master] WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER. Using value of HADOOP_SECURE_DN_USER. master: WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER. Using value of HADOOP_SECURE_DN_USER. Stopping datanodes WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER. Using value of HADOOP_SECURE_DN_USER. slave2: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password). slave3: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password). slave1: WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER. Using value of HADOOP_SECURE_DN_USER. slave1: ERROR: User defined in HDFS_DATANODE_SECURE_USER (yarn) does not exist. Aborting. Stopping secondary namenodes [master] WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER. Using value of HADOOP_SECURE_DN_USER. master: WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER. Using value of HADOOP_SECURE_DN_USER. WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER. Using value of HADOOP_SECURE_DN_USER. Stopping nodemanagers ERROR: nodemanager can only be executed by root. Stopping resourcemanager ERROR: resourcemanager can only be executed by root. [localhost@slave1 hadoop-3.1.4]$ [localhost@slave1 hadoop-3.1.4]$ # 重新启动HDFS(重点解决DataNode启动问题) [localhost@slave1 hadoop-3.1.4]$ 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 [master] WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER. Using value of HADOOP_SECURE_DN_USER. master: WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER. Using value of HADOOP_SECURE_DN_USER. master: ERROR: Unable to write in /usr/local/hadoop-3.1.4/logs. Aborting. Starting datanodes WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER. Using value of HADOOP_SECURE_DN_USER. slave3: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password). slave2: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password). slave1: WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER. Using value of HADOOP_SECURE_DN_USER. slave1: ERROR: User defined in HDFS_DATANODE_SECURE_USER (yarn) does not exist. Aborting. Starting secondary namenodes [master] WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER. Using value of HADOOP_SECURE_DN_USER. master: WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER. Using value of HADOOP_SECURE_DN_USER. master: ERROR: Unable to write in /usr/local/hadoop-3.1.4/logs. Aborting. WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER. Using value of HADOOP_SECURE_DN_USER. [localhost@slave1 hadoop-3.1.4]$ [localhost@slave1 hadoop-3.1.4]$ # 查看slave1节点的进程(在slave1的localhost用户下) [localhost@slave1 hadoop-3.1.4]$ jps 5726 Jps [localhost@slave1 hadoop-3.1.4]$ # 在slave1的localhost用户下,查看DataNode日志 [localhost@slave1 hadoop-3.1.4]$ cat $HADOOP_HOME/logs/hadoop-localhost-datanode-slave1.log cat: /usr/local/hadoop-3.1.4/logs/hadoop-localhost-datanode-slave1.log: 没有那个文件或目录
最新发布
11-09
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值