centos789手动无脑用sh脚本安装Java8

#老师给的文件是jdk8版本,所以我这边写的也是8的脚本

输入命令:mkdir  –p  /export/data

#放置相关的数据文件

输入命令:mkdir  –p  /export/servers

#软件的安装目录

输入命令:mkdir  –p  /export/software

上传文件jdk-8u241-linux-x64.tar.gz到/export/software目录

然后写一个安装脚本  vim install_jdk.sh

脚本代码
 #!/bin/bash

# 确保以 root 用户运行
if [ "$(id -u)" -ne "0" ]; then
  echo "请以 root 用户运行此脚本!"
  exit 1
fi

# 定义目录和文件路径
SOFTWARE_DIR="/export/software"
SERVER_DIR="/export/servers"
JAVA_TAR="jdk-8u241-linux-x64.tar.gz"
JAVA_DIR="jdk1.8.0_241"
JAVA_SYMLINK="jdk"

# 确保目标目录存在
if [ ! -d "$SOFTWARE_DIR" ]; then
  echo "目录 $SOFTWARE_DIR 不存在,正在创建..."
  mkdir -p "$SOFTWARE_DIR"
  if [ $? -ne 0 ]; then
    echo "创建目录 $SOFTWARE_DIR 失败。"
    exit 1
  fi
fi

if [ ! -d "$SERVER_DIR" ]; then
  echo "目录 $SERVER_DIR 不存在,正在创建..."
  mkdir -p "$SERVER_DIR"
  if [ $? -ne 0 ]; then
    echo "创建目录 $SERVER_DIR 失败。"
    exit 1
  fi
fi

# 切换到软件目录
cd "$SOFTWARE_DIR" || { echo "无法切换到目录 $SOFTWARE_DIR"; exit 1; }

# 检查 JDK 压缩包是否存在
if [ ! -f "$JAVA_TAR" ]; then
  echo "压缩包 $JAVA_TAR 不存在,请上传该文件后再运行脚本。"
  exit 1
fi

# 解压 JDK 包
echo "正在解压 $JAVA_TAR 到 $SERVER_DIR..."
tar -zxvf "$JAVA_TAR" -C "$SERVER_DIR" || { echo "解压失败"; exit 1; }

# 切换到解压后的目录
cd "$SERVER_DIR" || { echo "无法切换到目录 $SERVER_DIR"; exit 1; }

# 重命名解压后的 JDK 目录
if [ -d "$JAVA_DIR" ]; then
  echo "重命名 $JAVA_DIR 为 $JAVA_SYMLINK..."
  mv "$JAVA_DIR" "$JAVA_SYMLINK" || { echo "重命名失败"; exit 1; }
else
  echo "目录 $JAVA_DIR 不存在,检查解压结果。"
  exit 1
fi

# 配置 JDK 环境变量
PROFILE_FILE="/etc/profile"
echo "配置 JDK 环境变量..."
{
  echo "# JDK 环境变量配置"
  echo "export JAVA_HOME=$SERVER_DIR/$JAVA_SYMLINK"
  echo "export PATH=$PATH:$JAVA_HOME/bin"
  echo "export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar"
} >> "$PROFILE_FILE"

# 重新加载环境变量配置
source "$PROFILE_FILE" || { echo "无法重新加载环境变量配置"; exit 1; }

# 修正 Java 执行文件的权限
echo "修正 Java 执行文件的权限..."
chmod -R +x "$SERVER_DIR/$JAVA_SYMLINK/bin/java" || { echo "修正权限失败"; exit 1; }

# 验证 Java 是否安装成功
echo "验证 Java 安装..."
java -version || { echo "Java 安装失败"; exit 1; }

echo "Java 安装和配置完成!"

root@iZbp194zd87uhtpqlqkf3gZ:~# 
cat /root/install_jdk.sh 
#!/bin/bash

# 确保以 root 用户运行
if [ "$(id -u)" -ne "0" ]; then
  echo "请以 root 用户运行此脚本!"
  exit 1
fi

# 定义目录和文件路径
SOFTWARE_DIR="/export/software"
SERVER_DIR="/export/servers"
JAVA_TAR="jdk-8u241-linux-x64.tar.gz"
JAVA_DIR="jdk1.8.0_241"
JAVA_SYMLINK="jdk"

# 确保目标目录存在
if [ ! -d "$SOFTWARE_DIR" ]; then
  echo "目录 $SOFTWARE_DIR 不存在,正在创建..."
  mkdir -p "$SOFTWARE_DIR"
  if [ $? -ne 0 ]; then
    echo "创建目录 $SOFTWARE_DIR 失败。"
    exit 1
  fi
fi

if [ ! -d "$SERVER_DIR" ]; then
  echo "目录 $SERVER_DIR 不存在,正在创建..."
  mkdir -p "$SERVER_DIR"
  if [ $? -ne 0 ]; then
    echo "创建目录 $SERVER_DIR 失败。"
    exit 1
  fi
fi

# 切换到软件目录
cd "$SOFTWARE_DIR" || { echo "无法切换到目录 $SOFTWARE_DIR"; exit 1; }

# 检查 JDK 压缩包是否存在
if [ ! -f "$JAVA_TAR" ]; then
  echo "压缩包 $JAVA_TAR 不存在,请上传该文件后再运行脚本。"
  exit 1
fi

# 解压 JDK 包
echo "正在解压 $JAVA_TAR 到 $SERVER_DIR..."
tar -zxvf "$JAVA_TAR" -C "$SERVER_DIR" || { echo "解压失败"; exit 1; }

# 切换到解压后的目录
cd "$SERVER_DIR" || { echo "无法切换到目录 $SERVER_DIR"; exit 1; }

# 重命名解压后的 JDK 目录
if [ -d "$JAVA_DIR" ]; then
  echo "重命名 $JAVA_DIR 为 $JAVA_SYMLINK..."
  mv "$JAVA_DIR" "$JAVA_SYMLINK" || { echo "重命名失败"; exit 1; }
else
  echo "目录 $JAVA_DIR 不存在,检查解压结果。"
  exit 1
fi

# 配置 JDK 环境变量
PROFILE_FILE="/etc/profile"
echo "配置 JDK 环境变量..."
{
  echo "# JDK 环境变量配置"
  echo "export JAVA_HOME=$SERVER_DIR/$JAVA_SYMLINK"
  echo "export PATH=\$PATH:$JAVA_HOME/bin"
  echo "export CLASSPATH=.:\$JAVA_HOME/lib/dt.jar:\$JAVA_HOME/lib/tools.jar"
} >> "$PROFILE_FILE"

# 重新加载环境变量配置
source "$PROFILE_FILE" || { echo "无法重新加载环境变量配置"; exit 1; }

# 修正 Java 执行文件的权限
echo "修正 Java 执行文件的权限..."
chmod -R +x "$SERVER_DIR/$JAVA_SYMLINK/bin/java" || { echo "修正权限失败"; exit 1; }

# 验证 Java 是否安装成功
echo "验证 Java 安装..."
java -version || { echo "Java 安装失败"; exit 1; }

echo "Java 安装和配置完成!"

记得赋予权限

chmod +x install_jdk.sh

执行这个脚本首先要保证 /export/servers和/export/software这两个文件夹已经建立且jdk软件包和我一样是jdk-8u241-linux-x64.tar.gz且解压出来的文件夹名为jdk1.8.0_241

然后自己检测一次是否安装成功

java -version

不成功检测一下 /etc/profile文件,是否和下面图片的文件一致。

vim /etc/profile

export JAVA_HOME=/export/servers/jdk

export PATH=$PATH:$JAVA_HOME/bin

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

更改完成后,记得运行下面命令使配置文件生效。

source /etc/profile

如果你要安装其他的Java版本,比如openjdk-8u44-linux-x64.tar.gz,那你可以将下面两个参数变一下。如图:

JAVA_TAR="openjdk-8u44-linux-x64.tar.gz"
JAVA_DIR="java-se-8u44-ri"

如何设置参数:在你自己的Windows电脑双击你下载好的jdk安装包,然后查看里面的文件夹名称

相关资源包的下载:

jdk:https://jdk.java.net/8/

不过官网上8已经没有了

大家可以从下面这个国内华为镜像站去找

https://repo.huaweicloud.com:8443/artifactory/java-local/jdk/

链接: https://pan.baidu.com/s/1CtlnegK5OOlvvDu6y_47jg?pwd=wace

posted @ 2024-09-19 19:40  张小张#  阅读(37)  评论(0编辑  收藏  举报