#!/usr/bin/env bash SOFT_PATH="/home/smart" SOFT_NAME="SmartOrganizer" SERVICE_SCRIPT="SOService" SERVICE_NAME="SOS" wget -q --no-check-certificate "https://bbt-static-a.oss-cn-beijing.aliyuncs.com/smart/organizer/${SOFT_NAME}.zip" -O ${SOFT_PATH}/${SOFT_NAME}.zip if [[ -z ${SOFT_PATH}/${SOFT_NAME}.zip ]]; then echo "Download failed!" exit 2 fi echo "Download successed" unzip -o -qq ${SOFT_PATH}/${SOFT_NAME}.zip -d ${SOFT_PATH}/${SOFT_NAME} echo "Unpacking..." chmod 700 ${SOFT_PATH}/${SOFT_NAME}/SO* chmod 700 ${SOFT_PATH}/${SOFT_NAME}/bin/* chmod 700 ${SOFT_PATH}/${SOFT_NAME}/common/*/* chmod 700 ${SOFT_PATH}/${SOFT_NAME}/scripts/* mkdir -p ${SOFT_PATH}/${SOFT_NAME}/downloads ${SOFT_PATH}/${SOFT_NAME}/tasks chmod 777 ${SOFT_PATH}/${SOFT_NAME}/downloads ${SOFT_PATH}/${SOFT_NAME}/tasks rm -f ${SOFT_PATH}/${SOFT_NAME}.zip echo "DONE!" echo "Remove source package" if [[ -f ${SOFT_PATH}/${SOFT_NAME}/init.sh ]];then echo "Initializing..." /bin/bash ${SOFT_PATH}/${SOFT_NAME}/init.sh rm -f ${SOFT_PATH}/${SOFT_NAME}/init.sh echo "Initialize Completed!" fi if [[ -f ${SOFT_PATH}/${SOFT_NAME}/upgrade.sh ]];then rm -f ${SOFT_PATH}/${SOFT_NAME}/upgrade.sh echo "Unused script clear Completed!" fi # service and restart getSystemVersion() { releasetmp=`cat /etc/redhat-release | awk -Frelease '{print $2}' | awk -F. '{print $1}' | awk '{print $1}'` echo $releasetmp } syncSoftwareStatus() { hostname=$(hostname) name="SmartOrganizer" version=$(cat ${SOFT_PATH}/${SOFT_NAME}/.version) echo "Sync software status: ${hostname}:${name}:${version}" curl -sS -D /dev/null -o /dev/null -H "hostname:${hostname}" "https://c.baobaot.com/api/software/sync_status?name=${name}&version=${version}" } syncSoftwareStatus if [[ $(getSystemVersion) -eq 6 ]]; then echo "current system version is 6" service SOS stop rm -f /etc/init.d/${SERVICE_NAME} ln -s ${SOFT_PATH}/${SOFT_NAME}/${SERVICE_SCRIPT} /etc/init.d/${SERVICE_NAME} chkconfig --add ${SERVICE_NAME} chkconfig ${SERVICE_NAME} on service SOS start else echo "current system version is > 6" systemctl stop ${SERVICE_NAME} systemctl disable ${SERVICE_NAME} rm -f /usr/lib/systemd/system/${SERVICE_NAME}.service systemctl enable ${SERVICE_NAME} systemctl start ${SERVICE_NAME} fi