#!/bin/bash # Author : 19044168 # Date : 2022/08/15 # Func : 安装tomcat和jdk # 例如:sh tomcat_install.sh /opt ############################################################################## usage="Usage: tomcat_install.sh tomcatPath" # 检查传参个数 if [ $# -eq 1 ];then echo "# 脚本传入参数tomcat安装目录: "$1 else echo "ERROR: 传入参数个数不符合预期,请输入tomcat安装目录" echo $usage exit fi #tomcat安装目录 tomcatPath=$1 #Set PWD当前脚本所在目录 PWDDIR=`pwd` #tomcat安装包 fileTomcat=$(ls ${PWDDIR} | grep 'apache-tomcat*') #jdk1安装包 filejdkjar=$(ls $PWDDIR | grep 'jdk.*gz') #创建tomcat安装目录 create_tomcatdir() { if [ ! -d ${tomcatPath} ];then #创建tomcat安装目录 mkdir -p ${tomcatPath} else echo "${tomcatPath}目录存在,不需要创建" fi } Check_error() { if [ $? -eq 0 ];then echo "SUCCESS" else echo "FAIL" >>$PWDDIR/create_tomcat.log fi } #创建tomcatuser用户 create_user() { if id -u tomcatuser >/dev/null 2>&1;then echo "user tomcatuser exists" else #创建tomcat用户和组 groupadd tomcatuser; useradd -g tomcatuser tomcatuser; fi su - tomcatuser -c "mkdir software" } #安装tomcat并软连到tomcatuser下 install_tomcat() { if [ -d /home/tomcatuser/software/tomcat ] then #如果java目录存在,就删除java目录 rm -rf /home/tomcatuser/software/tomcat fi #输入tomcat压缩文件 if [ -f ${fileTomcat} ] then echo "正在创建tomcat解压后使用的目录"; create_tomcatdir Check_error #解压tomcat tar -zxvf ${fileTomcat} -C ${tomcatPath}; echo "tomcat解压完成"; else echo "请输入正确的文件"; exit 1 fi #给解压后的tomcat赋权,并目录软连到tomcatuser目录下 tomcatDir=$(ls -d ${tomcatPath}/apache-tomcat*/) chown -R tomcatuser:tomcatuser $tomcatDir su - tomcatuser -c "ln -snf $tomcatDir /home/tomcatuser/software/tomcat" echo "tomcat安装到tomcatuser完成" } #安装jdk install_jdk() { if [ ! -d /home/tomcatuser/software/java ] then #如果java目录存在,就删除java目录 rm -rf /home/tomcatuser/software/java fi if [ -f "${filejdkjar}" ]; then #开始安装jdk1.8 tar -zxvf ${filejdkjar} -C ${tomcatPath} else echo "jdk1安装包不满足是以jdk1.8.开头的.tar.gz包" exit 4 fi #获取tomcatPath下的jdk目录 javaDir=$(ls -d ${tomcatPath}/{*java*/,*jdk*/}) #给解压后的jdk目录赋权,并目录软连到tomcatuser目录下 chown -R tomcatuser:tomcatuser ${javaDir}; #建立jdk的软连 su - tomcatuser -c "ln -snf $javaDir /home/tomcatuser/software/java" echo "jdk安装到tomcatuser完成" } #校验java环境变量是否存在,存在删除 checkExistJava(){ echo "检查java环境变量配置开始" #JAVA_HOME配置 jdk_javahome=$(grep -n "export JAVA_HOME=.*" /home/tomcatuser/.bashrc | cut -f1 -d':') if [ -n "$jdk_javahome" ];then echo "JAVA_HOME 已经配置,删除重新配置" sed -i "${jdk_javahome}d" /home/tomcatuser/.bashrc fi #PATH配置 jdk_path=$(grep -n "export PATH=.*\$JAVA_HOME.*" /home/tomcatuser/.bashrc | cut -f1 -d':') if [ -n "$jdk_path" ];then echo "PATH已经配置,删除重新配置" sed -i "${jdk_path}d" /home/tomcatuser/.bashrc fi } #配置tomcatuser用户的环境变量 conf_javahome() { #校验java环境变量是否存在,存在就删除 checkExistJava #修改tomcatuser环境变量,并source sed -i '$a export JAVA_HOME=/home/tomcatuser/software/java' /home/tomcatuser/.bashrc sed -i '$a export PATH=$JAVA_HOME/bin/:$PATH' /home/tomcatuser/.bashrc source /home/tomcatuser/.bashrc #安装完成后检查环境变量 versionjdk=$(su - tomcatuser -c "java -version 2>&1|grep 'java version'") echo $versionjdk if [ -n "${versionjdk}" ];then echo "已配置好tomcatuser的jdk环境变量" else echo "重新配置jdk" return 1 fi } main() { echo "tomcat安装完成,创建用户" create_user echo "开始安装tomcat" install_tomcat echo "开始安装jdk" install_jdk echo "开始配置JAVA_HOME" conf_javahome } main;
【脚本安装tomcat和jdk】
最新推荐文章于 2022-12-27 16:32:22 发布