shell指令碼--一鍵安裝openfire服務
阿新 • • 發佈:2018-12-05
在之前的服務架構中,IM服務需要用到openfire,這裡編寫一個指令碼實現一鍵安裝openfire服務。
注:此部署指令碼為單機部署指令碼,若為叢集環境,請自行配置!!
#!/bin/bash ######################################################## # all_in_one_openfire.sh # written by Zhenming Xie(skyfans) 2016-02-14 # # CentOS6.5 x86-64環境下jdk(1.6.045)和openfire的一鍵式傻瓜安裝包,使用步驟說明 # 1. 保證機器有足夠的磁碟空間 # 2. 安裝包的路徑為/opt/setup # 3. openfire安裝路徑/opt/openfire # 4. 。 # 5. root登入執行 bash all_in_one_openfire.sh | tee aio_`date +%Y%m%d_%H%M`.log # # 警告:一鍵式安裝全部採用預設配置引數,如果在任何生產環境使用,後果自負。 # # ######################################################## ## 軟體的安裝包的地址(請根據實際版本及檔案安裝包名稱進行修改) BIN_SRC_1=/opt/setup/jdk-6u45-linux-x64-rpm.bin RPM_SRC_2=/opt/setup/openfire-3.8.2-1.i386.rpm JAVA_PA=/usr/java ######################################################## # 安裝前的的檢查 precheck() { if [ ! -f "${BIN_SRC_1}" -o ! -f "${RPM_SRC_2}" ]; then echo --提示:Java安裝檔案或openfire安裝檔案不存在,請將它們拷貝過來再執行! exit 1; fi echo --提示:------- 作業系統情況 -------- #lsb_release -a cat /etc/issue echo --提示:------- 磁碟使用空間情況 -------- df -h echo --提示:------- 記憶體使用空間情況 -------- free -m } ######################################################## # 安裝前檢查java環境變數安裝情況 install_java() { echo --提示:-------正在安裝配置java環境變數,請稍等!------- sleep 1 echo --提示:-------第一步:檢查本機是否安裝了java!------- #java_version=` echo $JAVA_HOME | cut -b 14-` #echo $java_version java_version = java -version 2>&1|grep java|awk -F '"' '{print $2}' edition=1.6.0_45 echo --------------"$java_version" | grep -q "$edition"-------- if [ $? -eq 0 ] then echo -------本機已安裝了openfire所需使用的java無須在安裝,可以直接安裝openfire ------- else echo -------本機未安裝java,開始安裝------- fi } ######################################################## # 開始安裝配置java環境變數 startInstallJava() { echo -------建立java安裝路徑------- mkdir /usr/java echo -------java安裝路徑建立完畢------- chmod 755 jdk-6u45-linux-x64-rpm.bin echo --提示:-------開始安裝java!------- ./jdk-6u45-linux-x64-rpm.bin sleep 10 echo --提示:-------開始配置java環境變數!------- sed -i '$aJAVA_HOME=/usr/java/jdk1.6.0_45' /etc/profile sed -i '$aJAVA_BIN=/usr/java/jdk1.6.0_45/bin' /etc/profile sed -i '$aPATH=$PATH:$JAVA_HOME/bin' /etc/profile sed -i '$aCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar' /etc/profile sed -i '$aexport JAVA_HOME JAVA_BIN PATH CLASSPATH' /etc/profile source /etc/profile java -version echo ---------當前配置完畢的JAVA路徑為: $JAVA_HOME------------- echo --提示:-----java安裝完畢--------- } ##################################################3 #開始安裝Openfire startInstallOp() { echo -----------------開始進行openfire安裝-------------------- rpm -ivh /opt/setup/openfire-3.8.2-1.i386.rpm echo -----------------openfire解壓安裝完成,開始配置openfire服務-------------------- /etc/init.d/openfire start #echo -----------------openfire服務啟動完成-------------------- service=`service openfire status |cut -b 13-` chenggong=running echo --------------"service" | grep -q "chenggong"-------- if [ $? -eq 0 ] then echo -------openfire服務啟動成功 ------- echo -------openfire安裝成功!!!!!!!!!!!!!!!!! ------- else echo -------openfire服務未啟動成功,請檢查問題!!!------- fi } ######################################################################################### # ******************************* # main routing # ******************************* precheck install_java startInstallJava startInstallOp