下面的解决方案我亲自试了没有问题;可行,但是对于初学者来说肯定会有一个疑问;这个.bash_profile文件到底在哪呢;其实很简单:

当前用户的.bash_profile在/home/用户/下,系统的.bash_profile在/etc/skel目录下; 默认可能是隐藏的;有人会问了,隐藏的我怎么打开它,一个简单的办法,直接使用vi命令打开指定目录下的该文件就可以了;比如:vi /root/.bash_profile

说白了修改方法只有两步(针对root用户的命令):

1.修改配置文件:vi /root/.bash_profile   添加 export HADOOP_HOME_WARN_SUPPRESS=1

2.重新加载配置文件:source /root/.bash_profile

下面详细介绍原因及方案;资料来自:http://chenzhou123520.iteye.com/blog/1826002

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

  1. ]# ./bin/start-all.sh
  2. Warning: $HADOOP_HOME is deprecated.

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

  1. if [ "$HADOOP_HOME_WARN_SUPPRESS" = "" ] && [ "$HADOOP_HOME" != "" ]; then
  2. >&2
  3. >&2
  4. fi

对于这个警告问题,解决方法如下:

1.注释掉hadoop-config.sh里的上面给出的这段if fi配置(不推荐)

2.在当前用户home/.bash_profile里增加一个环境变量:

export HADOOP_HOME_WARN_SUPPRESS=1

注:修改完.bash_profile后需要执行source操作使其生效

  1. [root@localhost ~]# source .bash_profile

执行完后我们可以检验一下配置是否成功,重新执行start-all.sh脚本:

  1. ]# ./bin/start-all.sh
  2. /libexec/../logs/hadoop-root-namenode-localhost.out
  3. /libexec/../logs/hadoop-root-datanode-localhost.out
  4. /libexec/../logs/hadoop-root-secondarynamenode-localhost.out
  5. /libexec/../logs/hadoop-root-jobtracker-localhost.out
  6. /libexec/../logs/hadoop-root-tasktracker-localhost.out

没有出现Warning: $HADOOP_HOME is deprecated,说明问题已经解决。

Warning: $HADOOP_HOME is deprecated. hadoop解决方法补充版的更多相关文章

  1. [转]关于安装hadoop中出现的的 $HADOOP_HOME is deprecated 的解决方法

    当前用户的.bash_profile在/home/用户/下,系统的.bash_profile在/etc/skel目录下; 默认可能是隐藏的:有人会问了,隐藏的我怎么打开它,一个简单的办法,直接使用vi ...

  2. PHP提示Deprecated: mysql_connect(): The mysql extension is deprecated的解决方法

    这篇文章主要介绍了PHP提示Deprecated: mysql_connect(): The mysql extension is deprecated的解决方法,是在进行PHP数据库程序开发中常会遇 ...

  3. “Warning: Call-time pass-by-reference has been deprecated in”解决方法

    刚刚在调试一个PHP木马,显示错误信息为: Warning: Call-time pass-by-reference has been deprecated in E:\New-Hack520org\ ...

  4. php Function ereg() is deprecated的解决方法

    PHP 5.3 ereg() 无法正常使用,提示“Function ereg() is deprecated Error”.问题根源是php中有两种正则表示方法,一个是posix,一个是perl,ph ...

  5. 【转】Deprecated: Function ereg_replace() is deprecated的解决方法

    这个问题是因为你用的php版本过高. 在php5.3中,正则函数ereg_replace已经废弃,而dedecms还继续用.有两个方案可以解决以上问题: 1.把php版本换到v5.3下. 2.继续使用 ...

  6. php 版本升高后 会出现 之Deprecated: Function ereg_replace() is deprecated的解决方法

    这个问题是因为php版本过高. 在php5.3中,正则函数ereg_replace已经废弃,而dedecms还继续用.有两个方案可以解决以上问题: 1.把php版本换到v5.3下. 2.继续使用v5. ...

  7. 微信图片解决方法-windows版的dat文件

    public string decodeImg(string filepath) { Dictionary<string, byte[]> headers = new Dictionary ...

  8. phpredis 报错 “Function Redis::setTimeout() is deprecated” 解决方法

    项目在本地开发过程中抛出异常: Function Redis::setTimeout() is deprecated 找到出错代码: <?php use Illuminate\Support\F ...

  9. Warning: $HADOOP_HOME is deprecated解决方法

    启动Hadoop时报了一个警告信息,我的系统是CentOS,安装的Hadoop版本是hadoop1.2.1,具体警告信息如下: [root@m1 hadoop-1.2.1]# bin/start-al ...

随机推荐

  1. Python说文解字_main

    1. main函数: 我们知道很多的编程语言都要写一个main函数,比如在C# 中Main函数还需要大写.很多人疑惑为什么要写这么一个Main函数.其实这就是好比我们在建了一排房子,你从哪个门都可以进 ...

  2. Python笔记_第四篇_高阶编程_进程、线程、协程_2.线程

    1. 线程概述: 在一个进程的内部,要同时干多件事情,就需要同时运行“多个子任务”,我们把进程内的这些“子任务”叫做线程.也就说线程是进程成的子任务. 线程通常叫做情景的进程.线程是通过向内侧控件的并 ...

  3. CMake变量(提供信息的变量)

    目录 CMAKE_VERSION CMAKE_MAJOR_VERSION CMAKE_MINOR_VERSION CMAKE_PATCH_VERSION CMAKE_TWEAK_VERSION CMA ...

  4. web前端学习 roadmap

    <tag attribute="value">content</tag>

  5. Python基础学习二

    Python基础学习二 1.编码 utf-8编码:自动将英文保存为1个字符,中文3个字符.ASCll编码被囊括在内. unicode:将所有字符保存为2给字符,容纳了世界上所有的编码. 2.字符串内置 ...

  6. iTOP-4418开发板TF卡烧写-引导uboot

    基于迅为iTOP-4418开发板 将 TF 卡接入开发板,将拨码开关设置为 TF 卡启动,进入 uboot 模式,如下图所示. 如下图所示,使用命令“fastboot”,接着就可以通过 OTG 给 e ...

  7. go语言学习资料

    Go语言圣经(中文版): https://docs.hacknode.org/gopl-zh/index.html Go语言高级编程(Advanced Go Programming) https:// ...

  8. zip和rar文件的contentType

    zip.rar.msi等文件使用Chrome提交的ContentType都为null,IE可以正确获取

  9. Linux--Centos下搭建Git服务器

    参考:http://kimi.it/370.html   http://blog.csdn.net/wave_1102/article/details/47779401 开始直接用 yum insta ...

  10. Linux下自由切换用户

    切换用户的命令是su,su是(switch user)切换用户的缩写.通过su命令,可以从普通用户切换到root用户,也可以从root用户切换到普通用户. 上述图中是linux下的终端页面,其中pyv ...