在配置hadoop是,进行格式化hadoop的时候,出现找不到jdk

我用Red hat是32位的,没有现成的32位的,敲java , 发现本机有java ,就找了一下其位置

找到了jdk-1.6.0

which java

[root@host2 hadoop-1.1.2]# which java
/usr/bin/java
[root@host2 hadoop-1.1.2]# ls /usr/bin/java
/usr/bin/java
[root@host2 hadoop-1.1.2]# ls -l /usr/bin/java
lrwxrwxrwx. 1 root root 22 Jun 20 03:00 /usr/bin/java -> /etc/alternatives/java
[root@host2 hadoop-1.1.2]# ls -l /etc/alternatives/java
lrwxrwxrwx. 1 root root 39 Jun 20 03:00 /etc/alternatives/java -> /usr/lib/jvm/jre-1.6.0-openjdk/bin/java         (可以看出文件是link ,是个链接)
[root@host2 hadoop-1.1.2]# ls -l /usr/lib/jvm/jre-1.6.0-openjdk/bin/java
-rwxr-xr-x. 1 root root 36548 Oct 25 2011 /usr/lib/jvm/jre-1.6.0-openjdk/bin/java
[root@host2 hadoop-1.1.2]# cd /usr/lib/jvm/jre-1.6.0-openjdk
[root@host2 jre-1.6.0-openjdk]# ls
bin lib

如此来,可以暂时的断定是  /usr/lib/jvm/jre-1.6.0-openjdk

root用户下改配置文件 : vi  /etc/profile

找到export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL

在下面写上:

export JAVA_HOME=/usr/lib/jvm/jre-1.6.0-openjdk
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar

:wq  保存退出

用echo $JAVA_HOME

在进行格式化:

[root@host2 jre-1.6.0-openjdk]# hadoop namenode -format

16/07/11 19:16:37 INFO namenode.NameNode: STARTUP_MSG:
/************************************************************
STARTUP_MSG: Starting NameNode
STARTUP_MSG: host = host2/192.168.8.202
STARTUP_MSG: args = [-format]
STARTUP_MSG: version = 1.1.2
STARTUP_MSG: build = https://svn.apache.org/repos/asf/hadoop/common/branches/branch-1.1 -r 1440782; compiled by 'hortonfo' on Thu Jan 31 02:03:24 UTC 2013
************************************************************/
16/07/11 19:16:38 INFO util.GSet: VM type = 32-bit
16/07/11 19:16:38 INFO util.GSet: 2% max memory = 17.77875 MB
16/07/11 19:16:38 INFO util.GSet: capacity = 2^22 = 4194304 entries
16/07/11 19:16:38 INFO util.GSet: recommended=4194304, actual=4194304
16/07/11 19:16:38 INFO namenode.FSNamesystem: fsOwner=root
16/07/11 19:16:38 INFO namenode.FSNamesystem: supergroup=supergroup
16/07/11 19:16:38 INFO namenode.FSNamesystem: isPermissionEnabled=true
16/07/11 19:16:38 INFO namenode.FSNamesystem: dfs.block.invalidate.limit=100
16/07/11 19:16:38 INFO namenode.FSNamesystem: isAccessTokenEnabled=false accessKeyUpdateInterval=0 min(s), accessTokenLifetime=0 min(s)
16/07/11 19:16:38 INFO namenode.NameNode: Caching file names occuring more than 10 times
16/07/11 19:16:38 INFO common.Storage: Image file of size 110 saved in 0 seconds.
16/07/11 19:16:38 INFO namenode.FSEditLog: closing edit log: position=4, editlog=/home/hadoop/dfs/filesystem/name/current/edits
16/07/11 19:16:38 INFO namenode.FSEditLog: close success: truncate to 4, editlog=/home/hadoop/dfs/filesystem/name/current/edits
16/07/11 19:16:39 INFO common.Storage: Storage directory /home/hadoop/dfs/filesystem/name has been successfully formatted.
16/07/11 19:16:39 INFO namenode.NameNode: SHUTDOWN_MSG:
/************************************************************
SHUTDOWN_MSG: Shutting down NameNode at host2/192.168.8.202
************************************************************/

可以了格式化,但是运行不起来hadoop

star-all.sh

[hadoop@host2 ~]$ start-all.sh
starting namenode, logging to /home/hadoop/hadoop-1.1.2/libexec/../logs/hadoop-hadoop-namenode-host2.out
host8: starting datanode, logging to /home/hadoop/hadoop-1.1.2/libexec/../logs/hadoop-hadoop-datanode-host8.out
host2: starting datanode, logging to /home/hadoop/hadoop-1.1.2/libexec/../logs/hadoop-hadoop-datanode-host2.out
host6: starting datanode, logging to /home/hadoop/hadoop-1.1.2/libexec/../logs/hadoop-hadoop-datanode-host6.out
host8: Error: JAVA_HOME is not set.
host2: Error: JAVA_HOME is not set.
host6: Error: JAVA_HOME is not set.
host2: starting secondarynamenode, logging to /home/hadoop/hadoop-1.1.2/libexec/../logs/hadoop-hadoop-secondarynamenode-host2.out
host2: Error: JAVA_HOME is not set.
jobtracker running as process 5607. Stop it first.
host6: starting tasktracker, logging to /home/hadoop/hadoop-1.1.2/libexec/../logs/hadoop-hadoop-tasktracker-host6.out
host2: starting tasktracker, logging to /home/hadoop/hadoop-1.1.2/libexec/../logs/hadoop-hadoop-tasktracker-host2.out
host8: starting tasktracker, logging to /home/hadoop/hadoop-1.1.2/libexec/../logs/hadoop-hadoop-tasktracker-host8.out
host6: Error: JAVA_HOME is not set.
host2: Error: JAVA_HOME is not set.
host8: Error: JAVA_HOME is not set.

看来,是不行的,进行查找配置的dt.jar 和tools.jar是找不见的

看来还得去下载官方的jdk

下载"1.7.0_79"
下载地址 http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

或者下载1.6 ,

下载地址:http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-419409.html#jdk-6u21-oth-JPR
下载后用tar -zxvf jdk-7u79-linux-i586.tar.gz 解压到/opt 目录下
root 用户下修改
vim ~/.bashrc
export JAVA_HOME=/opt/jdk1.7.0_79
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

source ~/.bashrc

update-alternatives --install /usr/bin/java java /opt/jdk1.7.0_79/bin/java 300
update-alternatives --install /usr/bin/javac javac /opt/jdk1.7.0_79/bin/javac 300
update-alternatives --install /usr/bin/jar jar /opt/jdk1.7.0_79/bin/jar 300

update-alternatives --config java
选择带有jdk1.7.0_79 的选项

即可以了

查看Linus中自带的jdk ,设置JAVA_HOME的更多相关文章

  1. 查看Linux中自带的jdk ,设置JAVA_HOME

    在配置hadoop是,进行格式化hadoop的时候,出现找不到jdk 我用centos7是64位的, 发现本机有java ,就找了一下其位置 找到了jdk-1.7.0_75 which java [r ...

  2. 阿里云卸载自带的JDK,安装JDK完成相关配置

    0.预备工作 笔者的云服务器购买的是阿里云的轻量应用服务器,相比于云服务器ECS,轻量应用服务器是固定流量但是网络带宽较高,对于服务器来说,网络带宽是非常昂贵的,而带宽也决定了你的应用访问的流畅度,带 ...

  3. 卸载Linux自带的JDK

    Redhat Enterprise Linux中自带了jdk的旧版本,往往需要卸载,卸载步骤如下: 在终端输入:yum remove java 终端显示:Is this ok[y/N]: 输入y,按回 ...

  4. JDK中自带的JVM分析工具

    目录 一.业务背景 二.Jdk-Bin目录 三.命令行工具 1.jps命令 2.jinfo命令 3.jstat命令 4.jstack命令 5.jmap命令 四.可视化工具 1.jconsole 2.v ...

  5. 查看flask中所有的路由信息(同时查看/设置允许的请求方式get、post)

    查看flask中所有的路由信息(同时查看/设置允许的请求方式get.post) # -*- coding: utf-8 -*- from flask import Flask app = Flask( ...

  6. IDEA中jdk设置

    电脑运行环境是8, 但是IDEA提醒说1.5已经过时,IDEA中jdk设置还是比较麻烦 https://blog.csdn.net/u012365843/article/details/8138883 ...

  7. Mac OS X 下查看和设置JAVA_HOME

    原文链接 : http://blog.csdn.net/done58/article/details/51138057 1, 查看Java版本 打开Mac电脑,查看JAVA版本,打开终端Termina ...

  8. CentOS使用yum源中自带的rpm包安装LAMP环境

    CentOS使用yum源中自带的rpm包安装LAMP环境.这是Linux下安装LAMP的环境一种最基本最简便的方式.新手可以从容安装使用. 1. 安装基础包(可选安装)yum install -y w ...

  9. jmeter随笔(3)-从csv中获取带引号的数据详情

    最近在工作中,对jmeter实践的点滴的记录这里分享,不一定正确,仅供参考和讨论,有想法的欢迎留言.谈论. 1技巧1:从csv中获取带引号的数据详情 背景:我们从csv中获取数据,在jmeter中使用 ...

随机推荐

  1. UVA1220Party at Hali-Bula(树的最大独立集 + 唯一性判断)

    http://acm.hust.edu.cn/vjudge/contest/view.action?cid=105116#problem/H 紫书P282 员工和直属老板只能选一个,最多选多少人 思路 ...

  2. xcrun: error: active developer path ("/Volumes/Xcode/Xcode-beta.app/Contents/Developer") does not exist, use `xcode-select --swi

    xcrun: error: active developer path ("/Volumes/Xcode/Xcode-beta.app/Contents/Developer") d ...

  3. 修改php执行用户,并使其拥有root权限

    useradd apachephp vi /etc/httpd/conf/httpd.conf 将组和用户修改成apachephp,重启apache,然后用lsof -i:80查看apache的执行用 ...

  4. WPF 组合快捷键

    if(e.KeyStates == Keyboard.GetKeyStates(Key.F4) && Keyboard.Modifiers == ModifierKeys.Alt) { ...

  5. IOS开发/iphone开发多线程

    有时候可能有很多功能要同时实现,例如每隔多长时间就会检测程序网络连接,又或者有时候需要从服务器下载一个不小的文件,如果用单线程几乎是不可想的事情,程序将会卡的无法使用,用到多线程和不用多线程,给用户的 ...

  6. c#之Redis实践list,hashtable

    写在前面 最近公司搞了一个活动,用到了redis的队列,就研究了下redis的相关内容.也顺手做了个demo. C#之使用Redis 可以通过Nuget安装Reidis的相关程序集.安装之后发现会引入 ...

  7. 转:this的用法

    this指针的含义及其用法: 1. this指针是一个隐含于每一个成员函数中的特殊指针.它指向正在被该成员函数操作的那个对象.2. 当对一个对象调用成员函数时,编译程序先将对象的地址赋给this指针, ...

  8. LINUX中,Vi编辑器的几种模式及保存、退出等命令

    vi编辑器有三种模式: 命令模式,编辑模式,末行模式 打开vi后首先是命令模式,用i,o,a等进入编辑模式,按esc退出编辑模式,回到命令模式. 在命令模式下输入:wq表示保存退出,:wq!强制保存退 ...

  9. 常用的HTTP协议

    http协议: 基本格式:http://<host>:<port>/<path>?<query>#<frag> 示例:http://www. ...

  10. Visual Studio 2015 各版本神KEY

    Visual Studio 2015 简体中文专业版专业版神Key:HMGNV-WCYXV-X7G9W-YCX63-B98R2 Visual Studio 2015 繁体中文企业版企业版神Key1:H ...