|
|
@@ -3,37 +3,42 @@
|
|
|
# 2013-09-27 09:28 created by niujiuru
|
|
|
# 2026-01-05 13:40 updated by niujiuru
|
|
|
|
|
|
-. $(dirname $0)/set_env
|
|
|
-. $(dirname $0)/modules/funcs/functions.sh
|
|
|
+. "$(dirname "$0")/set_env"
|
|
|
+. "$(dirname "$0")/modules/funcs/functions.sh"
|
|
|
export_env
|
|
|
|
|
|
INTERVAL=60
|
|
|
pidfile="${APPRUNS_PATH}/serverdaemon.pid"
|
|
|
|
|
|
if [ -f "$pidfile" ]; then
|
|
|
- pid=$(cat "$pidfile")
|
|
|
- kill -0 "$pid" 2>/dev/null && exit 0
|
|
|
+ pid=$(cat "$pidfile" 2>/dev/null)
|
|
|
+ if [ -n "$pid" ] && kill -0 "$pid" 2>/dev/null; then
|
|
|
+ exit 0
|
|
|
+ fi
|
|
|
rm -f "$pidfile"
|
|
|
fi
|
|
|
|
|
|
mkdir -p "$(dirname "$pidfile")"
|
|
|
echo $$ > "$pidfile"
|
|
|
|
|
|
-while true
|
|
|
-do
|
|
|
- if ! is_running "${APPBINS_PATH}/${YFKJ_SSHD}"
|
|
|
- then
|
|
|
- echo "starting ${YFKJ_SSHD}: ${APPBINS_PATH}/${YFKJ_SSHD} &"
|
|
|
- rm -rf ${APPRUNS_PATH}/*.lock
|
|
|
- ${APPBINS_PATH}/${YFKJ_SSHD} &
|
|
|
- fi
|
|
|
+start_if_needed()
|
|
|
+{
|
|
|
+ name="$1"
|
|
|
+ path="$2"
|
|
|
+ lock="${APPRUNS_PATH}/${name}.lock"
|
|
|
|
|
|
- if ! is_running "${APPBINS_PATH}/${APPNAME}"
|
|
|
+ if ! is_running "$path"
|
|
|
then
|
|
|
- echo "starting ${APPNAME}: ${APPBINS_PATH}/${APPNAME} &"
|
|
|
- rm -rf ${APPRUNS_PATH}/*.lock
|
|
|
- ${APPBINS_PATH}/${APPNAME} &
|
|
|
+ rm -f "$lock"
|
|
|
+ echo "starting $name: $path"
|
|
|
+ "$path" &
|
|
|
fi
|
|
|
+}
|
|
|
+
|
|
|
+while true
|
|
|
+do
|
|
|
+ start_if_needed "${YFKJ_SSHD}" "${APPBINS_PATH}/${YFKJ_SSHD}"
|
|
|
+ start_if_needed "${APPNAME}" "${APPBINS_PATH}/${APPNAME}"
|
|
|
|
|
|
sleep $INTERVAL
|
|
|
done
|