nginx+tomcat+resin+jdk一鍵自動化安裝腳本(4--resin安裝腳本)

#!/bin/bash
# this shell will be installed resin*.tar.gz
#author: wangjiulong

#global variables
resin_pkg=`cat $tmp_resin`
resin_tar=`cat $tmp_resin | awk -F.tar.gz '{print $1}'`
resin_num=`cat $tmp_resin | awk -F.tar.gz '{print $1}' | awk -F- '{print $2}'`
resin_path=/usr/local/resin

datef(){ date "+%Y/%m/%d %H:%M" ; }

#custom log
print_log(){
        if [[ -d $log_dir  ]];then
                echo "[$(datef)]  $1" >> $log
        else
                echo "[$(datef)] log path does not exist,created first" >>$log
                mkdir -p $log_dir
                echo "[$(datef)]  $1" >> $log
        fi
}

#檢查本機是否安裝了jdk,若是已經安裝了,則繼續安裝tomcat,否則先安裝jdk,再去安裝tomcat
check_jdk_install(){

        jdk_local_path=/data/java
        jdk_local_version=`java -version > /dev/null 2>&1;echo $?`

        if [ $jdk_local_version -eq 0  ];then
                print_log "本機jdk已經安裝,能夠安裝繼續安裝resin"
                install_resin
        else
                #無論是否以前安裝了jdk,默認安裝jdk1.7的
                echo "jdk-1.7.0_17.tar.gz" > $tmp_jdk
                source ./install_jdk.sh
                source /etc/profile
                print_log "jdk-1.7已經安裝,接下來安裝resin"
                install_resin
        fi
}

install_resin(){

        #resin安裝時的參數,請根據本身業務的需求,作相應的修改
        cd $tar_dir
        tar zxf $resin_pkg
        cd $resin_tar
        ./configure --prefix=/usr/local/resin --enable-jni --enable-64bit --enable-linux-smp --with-java-home=/data/java/jdk && make && make install

        if [[ $? != "0" ]];then
                echo "[$(datef)] ins_resin(): install error!"
                exit
        fi
        #判斷用戶安裝的resin的版本,不一樣的版本,替換不一樣的配置文件。
        case $resin_num in
                4.0.23)
                print_log "複製替換4.0.23版的resin文件"
                cp -fv $file_dir/resin_pro_4.0.23.xml /usr/local/resin/conf/resin.xml
                cp -fv $file_dir/resin_pro_4.0.23 /etc/init.d/resin
                ;;
                3.0.21)
                print_log "複製替換3.0.21版的resin文件"
                cp -fv $file_dir/resin.conf /usr/local/resin/conf/resin.conf
                cp -fv $file_dir/resin /etc/init.d/resin
                ;;
                *)
                ;;
        esac
        cp -fv $file_dir/license.jar /usr/local/resin/lib
        chkconfig --add resin
        chmod 755 /etc/init.d/resin

        [ ! -d  /data/log/resin ] && mkdir -m777 -p /data/log/resin
        add_user
}

add_user(){
        print_log "**************** Begin change www user mode *********************"
        if ! grep "^www" /etc/passwd
        then
                groupadd www
                useradd -g www -s /bin/bash -d /data/www www
        fi
                [[ -d /usr/local/resin ]] && chown -R www:www /usr/local/resin
        print_log "*************** End change www user mode ************************"
        finished
}

finished(){
        # install complete
        print_log ""
        print_log "###########################################################"
        print_log "# [$(datef)] congratulagions!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
        print_log "# [$(datef)] don't forget to modify configuration files!!!"
        print_log "# [$(datef)] based on your system resources like mem size "
        print_log "###########################################################"
        print_log ""
}

check_jdk_install
相關文章
相關標籤/搜索