#!/bin/sh # Find Java if [[ -n "$JAVA_HOME" ]] && [[ -x "$JAVA_HOME/bin/java" ]]; then JAVA_EXE="$JAVA_HOME/bin/java" elif type -p java > /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 # install if [ 1 -eq $1 ];then cat > /usr/lib/systemd/system/nz-talon.service < /usr/lib/systemd/system/promtail.service <<"EOF" [Unit] Description=nz-talon After=network.target [Service] WorkingDirectory=/opt/nezha/promtail EnvironmentFile=/opt/nezha/promtail/config.conf ExecStart=/opt/nezha/promtail/promtail $OPTION RestartSec=5s Restart=always [Install] WantedBy=multi-user.target EOF systemctl daemon-reload systemctl enable nz-talon && systemctl restart nz-talon systemctl enable promtail && systemctl restart promtail echo 'install nz-talon success !' 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 TALON_PATH=/opt/nezha/nz-talon TMP_PATH=/tmp/nezha/nz-talon PROMTAIL_PATH=/opt/nezha/promtail echo 'move backup config file...' if [ -d $TMP_PATH ];then # 恢复 nz-talon 配置文件 for i in $(ls $TALON_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 $TALON_PATH/config/$i fi done # 恢复 promtail 配置文件 for n in $(ls $TMP_PATH/promtail);do if [ -f "$PROMTAIL_PATH/$n" ];then echo 'return config file '${n} cp -f $TMP_PATH/promtail/$n $PROMTAIL_PATH/$n fi done fi systemctl restart nz-talon systemctl restart promtail fi