Hadoop是Java写的,他无法使用Linux预安装的OpenJDK,因此安装hadoop前需要先安装JDK(1.6以上)
原材料:在Oracle官网下载的32位JDK:
说明:
1、CentOS 7.0系统现在只有64位的,但是,Hadoop一般支持32位的,在64位环境下有事会有Warning出现,避免真的有神马问题,选择i586的JDK(即32位的),当然,64位的CentOS 7 肯定是兼容32位JDK的,记住:64位系统肯定兼容32位的软件,32位系统不能兼容64位软件。64位只是说明了CPU一次运算的位数为64位,比32位多,64位性能更高。
2、以前的Linux版本JDK有”.bin”文件可供下载,但是,现在官网只提供rpm的安装包与tar.gz的压缩包了,rpm安装包是RedHat系列系统(RedHat/RHEL/Fedora/CentOS)特有的安装文件,直接运行即可,但我们不知道其中的配置方法。所以,为接近底层,我选择tar.gz的压缩包予以安装。
安装方式:
自带的OpenJDK与之后安装的JDK,不可兼得,故而有两种操作:1、卸载删除原有的OpenJDK,再安装JDK 2、二者依然共存,但是,配置何者为真正有效的JDK
Method 1: 卸载删除原有的OpenJDK,再安装JDK
第一步:卸载删除OpenJDK
卸载删除OpenJDK,首先需要知道到底要删除哪些东西:
[Randy@localhost ~]$ rpm -qa|grep openjdk -i #查找已经安装的OpenJDK,-i表示忽略“openjdk”的大小写
现在将之全部删除:
[Randy@localhost ~]$ sudo yum remove java-1.6.0-openjdk-devel-1.6.0.0-6.1.13.4.el7_0.x86_64 java-1.7.0-openjdk-devel-1.7.0.65-2.5.1.2.el7_0.x86_64 java-1.7.0-openjdk-headless-1.7.0.65-2.5.1.2.el7_0.x86_64 java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el7_0.x86_64 java-1.6.0-openjdk-1.6.0.0-6.1.13.4.el7_0.x86_64 #用RedHat系列系统自带的yum进行删除openjdk,yum类似ubuntu中的apt-get,均用于安装、卸载及更新系统自带的软件,注意:以上均以空格间隔
第二步:安装JDK
1、解压
首先解压下载得来的JDK:(JDK的tar.gz压缩包放在了~/dev目录下)
[Randy@localhost ~]$ sudo mkdir /usr/lib/jdk #如若没有/usr/lib/jdk路径,则执行此句予以创建jdk文件夹 [Randy@localhost ~]$ sudo tar -zxvf jdk-8u11-linux-i586.tar.gz -C /usr/lib/jdk #注意:-C, --directory=DIR 改变至目录 DIR [Randy@localhost ~]$ ls /usr/lib/jdk jdk1.8.0_11 [Randy@localhost ~]$ ls /usr/lib/jdk/jdk1.8.0_11/ bin javafx-src.zip man THIRDPARTYLICENSEREADME-JAVAFX.txt COPYRIGHT jre README.html THIRDPARTYLICENSEREADME.txt db lib release include LICENSE src.zip [Randy@localhost ~]$
移动jdk1.8.0_11中的文件到/usr/lib/jdk,并删除jdk1.8.0_11文件夹:
[Randy@localhost ~]$ sudo cp -rf /usr/lib/jdk/jdk1.8.0_11/* /usr/lib/jdk/ #移动 [Randy@localhost ~]$ [Randy@localhost ~]$ ls /usr/lib/jdk bin javafx-src.zip LICENSE src.zip COPYRIGHT jdk1.8.0_11 man THIRDPARTYLICENSEREADME-JAVAFX.txt db jre README.html THIRDPARTYLICENSEREADME.txt include lib release [Randy@localhost ~]$ sudo rm -rf /usr/lib/jdk/jdk1.8.0_11/ #删除 [Randy@localhost ~]$ ls /usr/lib/jdk bin javafx-src.zip man THIRDPARTYLICENSEREADME-JAVAFX.txt COPYRIGHT jre README.html THIRDPARTYLICENSEREADME.txt db lib release include LICENSE src.zip [Randy@localhost ~]$
2、配置环境变量
[Randy@localhost ~]$ sudo vim /etc/profile 在最后一行插入: #JAVA Environment export JAVA_HOME=/usr/lib/jdk export JRE_HOME=/usr/lib/jdk/jre export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH export CLASSPATH=$CLASSPATH:.:$JAVA_HOME/lib:$JRE_HOME/lib
3、修改系统默认的JDK
[Randy@localhost ~]$ sudo update-alternatives --install /usr/bin/java java /usr/lib/jdk/bin/java 300 #使系统默认的java命令是/usr/lib/jdk/bin中的java命令 [Randy@localhost ~]$ sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jdk/bin/javac 300 #使系统默认的javac命令是/usr/lib/jdk/bin中的javac命令
[Randy@localhost ~]$ sudo update-alternatives --install /usr/bin/jar jar /usr/lib/jdk/bin/jar 300 #使系统默认的jar命令是/usr/lib/jdk/bin中的jar命令
[Randy@localhost ~]$ sudo update-alternatives --config java #配置默认java命令 共有 1 个提供“java”的程序。 选项 命令 ---------------------