#!/bin/sh WORK_DIR=/opt/nezha/nz-web fn_init_nz_web_service(){ cat > /usr/lib/systemd/system/nz-web.service < /dev/null 2>&1; then JAVA_EXE=$(type -p java) elif [[ -x "/usr/bin/java" ]]; then JAVA_EXE="/usr/bin/java" else echo "Unable to find Java" JAVA_EXE="java" # exit 1 fi WEB_PATH=/opt/nezha/nz-web TMP_PATH=/tmp/nezha/nz-web LIB_PATH=/usr/lib cp -f $WEB_PATH/lib/* $LIB_PATH # install if [ 1 -eq $1 ];then fn_init_nz_web_service systemctl daemon-reload systemctl enable nz-web.service systemctl start nz-web.service echo 'install success !' echo 'You should see the NEZHA setup page come up by going to:http://SERVER-IP/' fi compareMD5() { if [ ! -f $1 ] || [ ! -f $2 ];then echo 1 return 1 fi local f1MD5=`md5sum $1|awk '{print $1}'` local f2MD5=`md5sum $2|awk '{print $1}'` if [ ${f1MD5} = ${f2MD5} ];then echo 0 return 0 else echo 1 return 1 fi } # update if [ 2 -eq $1 ];then fn_init_nz_web_service echo 'move backup config file...' if [ -d $TMP_PATH ];then for i in $(ls $TMP_PATH/config);do if [ 1 -eq `compareMD5 $WEB_PATH/config/$i $TMP_PATH/config/$i` ];then echo 'return config file '${i} cp -f $TMP_PATH/config/$i $WEB_PATH/config/$i fi done # nz 配置文件格式变更 # database.host 和 database.port 如果存在,拼接后赋值给 database.url # 删除 database.host,database.port,redis.* web_config_file=$WEB_PATH/config/nezha.properties while IFS='=' read -r key value; do key="${key// /}" value="${value// /}" case "$key" in database.host) database_host="$value" ;; database.port) database_port="$value" ;; *) esac done < "$web_config_file" if [[ -n $database_host ]] && [[ -n $database_port ]]; then database_url="${database_host}:${database_port}" sed -i '/^database\.\(host\|port\)=/d' "$web_config_file" echo >> "$web_config_file" echo "database.url=$database_url" >> "$web_config_file" echo "nezha.properties add properties. key='database.url' value=$database_url" fi # 删除 redis 配置项 sed -i '/^redis\./d' "$web_config_file" fi systemctl daemon-reload systemctl enable nz-web.service echo 'update nz-web success !' fi