去除HADOOP_HOME is deprecated

去除hadoop运行时的警告

1. 档hadoop运行时,我们会看到如下图1.1所示的警告。

图 1.1

2. 虽然不影响程序运行,但是看到这样的警告信息总是觉得自己做得不够好。一步步分析,先看一下启动脚本start-all.sh的源码,执行命令cd  /usr/local/hadoop/bin目录下,执行命令more start-all.sh,脚本start-all.sh的源码如下图1.2所示。

图 1.2

3. 虽然我们看不懂shell脚本的语法,但是可以猜到可能和文件hadoop-config.sh有关,我们再看一下这个文件的源码。该文件特大,我们只截取最后一部分,见下图1.3所示。

图 1.3

4. 从图中的黑色框框中可以看到,脚本判断变量HADOOP_HOME_WARN_SUPPRESS和HADOOP_HOME的值,如果前者为空,后者不为空,则显示警告信息“Warning……”。所以是,我们在安装hadoop时,设置了环境变量HADOOP_HOME造成的。

5. 网上有的说新的hadoop版本使用HADOOP_INSTALL作为环境变量,我还没有看到源代码,并且担心其他框架与hadoop的兼容性,所以暂时不修改,那么只好设置HADOOP_HOME_WARN_SUPPRESS的值了。

修改配置文件/etc/profile(我原来一直在这里设置环境变量,操作系统是rhel6.3),增加环境变量HADOOP_HOME_WARN_SUPPRESS,如下图1.4所示。

图 1.4

6. 保存退出,再次启动hadoop,就不会出现警告信息了,如下图1.5所示。

图 1.5

时间: 2024-10-24 15:29:17

去除HADOOP_HOME is deprecated的相关文章

07_Warning $HADOOP_HOME is deprecated.去除办法

Warning $HADOOP_HOME is deprecated.去除办法 警告的出现: 解决方案: 第一种: 去除[/etc/profile]文件中[export HADOOP_HOME=/opt/modules/hadoop-1.2.1],并且使其生效, 命令如下: # source /etc/profile 出现的原因:在 hadoop-config.sh 脚本中,有如下代码片段: 第二种 如果要解决这个问题,只要让上述中的 [$HADOOP_HOME_WARN_SUPPRESS]不为

Hadoop1.2.1 出现Warning: $HADOOP_HOME is deprecated.的解决方案

通过启动或停止hadoop我们会发现会出现 “Warning: $HADOOP_HOME is deprecated” 这样一个警告,下面给出解决方案: 不过我们一般推荐第二种,因为我们还是需要$HADOOP_HOME的,方便引用. 所以我们一般在/etc/profile 文件最后加上 export HADOOP_HOME_WARN_SUPPRESS=1 ,然后输入命令[source /etc/profile]使其生效即可.

Hadoop之—— CentOS Warning: $HADOOP_HOME is deprecated解决方案

转载请注明出处:http://blog.csdn.net/l1028386804/article/details/46389499 启动Hadoop时报了一个警告信息,我安装的Hadoop版本是hadoop1.0.4,具体警告信息如下: [[email protected] hadoop-1.0.4]# ./bin/start-all.sh Warning: $HADOOP_HOME is deprecated. 网上的说法是因为Hadoop本身对HADOOP_HOME做了判断,具体在bin/h

Hadoop日记Day4---去除HADOOP_HOME is deprecated

去除hadoop运行时的警告 1. 档hadoop运行时,我们会看到如下图1.1所示的警告. 图 1.1 2. 虽然不影响程序运行,但是看到这样的警告信息总是觉得自己做得不够好.一步步分析,先看一下启动脚本start-all.sh的源码,执行命令cd  /usr/local/hadoop/bin目录下,执行命令more start-all.sh,脚本start-all.sh的源码如下图1.2所示. 图 1.2 3. 虽然我们看不懂shell脚本的语法,但是可以猜到可能和文件hadoop-conf

去除hadoop的启动过程中警告信息

如何去除hadoop的启动过程中警告信息1.由于警告是在执行start-all.sh启动Hadoop时出现的,所以应该查看start-all.sh,执行more start-all.sh可以看到下面代码:if [ -e "$bin/../libexec/hadoop-config.sh" ]; then  . "$bin"/../libexec/hadoop-config.shelse  . "$bin/hadoop-config.sh"fi根据

hadoop在虚拟机rhl5上的安装总结

#0.前期工作 虚拟机中安装redhat5,并配置主机名hostname=node1,ip=10.0.0.101,hosts列表等. #1.使用ssh或ftp上传 由于本人使用的是mac,自带了scp命令,此处就使用了更为习惯的scp命令. scp jdk-6u3-linux-i586-rpm.bin [email protected]:`pwd` scp hadoop-1.0.3.tar.gz [email protected]:/hadoop scp hive-0.9.0.tar.gz [e

ant编译后用hadoop报Could not find or load main class

错误信息: [[email protected] HDFS_Java_API]$ hadoop HDFSJavaAPI.jar HDFSJavaAPIDemo Warning: $HADOOP_HOME is deprecated. Error: Could not find or load main class HDFSJavaAPI.jar 报错原因: 当前运行的 .class  文件不在 hadoop-env.sh文件中 解决办法: 在 hadoop-env.sh中配置HADOOP_CLA

Hadoop错误日志

1.错误日志:Directory /tmp/hadoop-root/dfs/name is in an inconsistent state: storage directory does not exist or is not accessible. 错误原因:在Linux下Hadoop等的各种数据默认保存在 /tmp目录下.当重启系统后 /tmp目录中的数据信息被清除,导致Hadoop启动失败.确定目录 /tmp/hadoop-root/dfs/name是否存在解决方案: 使用命令bin/h

Ubuntu环境下手动配置Hadoop

配置Hadoop 前提时已经配置过JDK和SSH (如何配置JDK:http://www.cnblogs.com/xxx0624/p/4164744.html) (如何配置SSH:http://www.cnblogs.com/xxx0624/p/4165252.html) 1. 添加Hadoop用户 sudo addgroup hadoop sudo adduser --ingroup hadoop hadoopsudo usermod -aG admin hadoop 2. 下载Hadoop文