(1)下载并解压JDK包到指定目录
(2)配置环境变量
以dataxc用户为例,脚本示例如下:
#!/bin/bash
# jdk.sh#安装jdk前,先查看已安装jdk版本,卸载不需要的版本nodes=(n100 n101 n102 n103)#创建程序目录
function f_mkdir()
{
if [ ! -d /home/dataxc/opt ];
then
mkdir /home/dataxc/opt
else
echo dir exist
fi
}
f_mkdir#解压jdk包
cd /home/dataxc/sw && tar -zxvf jdk-8u301-linux-x64.tar.gz -C /home/dataxc/opt#复制到其他节点
for node in ${nodes[*]:1}
do
sshdataxc@$node mkdir -p /home/dataxc/opt/jdk1.8.0_301
scp -r /home/dataxc/opt/jdk1.8.0_301 dataxc@$node:/home/dataxc/opt
done#添加java变量到~/.bashrc(或/etc/profile)
for node in ${nodes[*]}
do
ssh dataxc@$node 'echo -e "export JAVA_HOME=/home/dataxc/opt/jdk1.8.0_301\nexport PATH=$PATH:\$JAVA_HOME/bin" >> /home/dataxc/.bashrc;
source /home/dataxc/.bashrc'
done#end
【大数据|二、JDK安装与变量配置】
推荐阅读
- java|ubuntu docker遇到的一些问题
- Ubuntu|Ubuntu 下统计文件数量的命令
- java|Ubuntu下单机安装Hadoop详细教程(附所需安装包下载)
- 算法|2021年图灵奖,花落高性能计算先驱、田纳西大学教授Jack Dongarra
- 数据结构与java集合|java集合图解源码系列【4】(从HashMap讲到红黑树和哈希表)
- Java编程开发|java开发(Class.forName 和 ClassLoader的区别和联系 | 使用场景 | 多方位解析)
- #|Zookeeper后端开发工具Curator的使用 | Curator对节点的增删改查 | ACL权限控制 | 分布式锁 | 分布式计数器 | 附带最新版本下载
- Java编程开发|Java多线程(synchronized | Volatile 和Lock和ReadWriteLock多方位剖析(一))
- java|springBoot自动装配原理