You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
54 lines
1.3 KiB
54 lines
1.3 KiB
#!/bin/bash
|
|
|
|
|
|
DOUSHIO=/srv
|
|
LOG=daemon.log
|
|
|
|
if [[ "$1" == "start" ]]; then
|
|
cd $DOUSHIO
|
|
if ps -p $(cat doushio.pid) >/dev/null; then
|
|
echo "[e] daemon already active"
|
|
exit
|
|
fi
|
|
echo "[`date -u +%Y-%m-%dT%T.%3NZ`] starting daemon..." >>$LOG
|
|
node server/server.js 1>/dev/null 2>>$LOG &
|
|
echo $! > doushio.pid
|
|
echo "[+] doushio ($(cat doushio.pid))"
|
|
echo " doushio $(cat doushio.pid)" >>$LOG
|
|
node archive/daemon.js 1>/dev/null 2>>$LOG &
|
|
echo $! > doushio.archive.pid
|
|
echo "[+] archive ($(cat doushio.archive.pid))"
|
|
echo " archive $(cat doushio.archive.pid)" >>$LOG
|
|
elif [[ "$1" == "stop" ]]; then
|
|
cd $DOUSHIO
|
|
echo "[`date -u +%Y-%m-%dT%T.%3NZ`] stopping daemon..." >>$LOG
|
|
kill $(cat doushio.archive.pid)
|
|
if ps -p $(cat doushio.archive.pid) >/dev/null; then
|
|
echo "[e] failed to stop archive"
|
|
echo " archive failed" >>$LOG
|
|
else
|
|
echo "[-] archive"
|
|
echo " archive ok" >>$LOG
|
|
fi
|
|
kill $(cat doushio.pid)
|
|
if ps -p $(cat doushio.pid) >/dev/null; then
|
|
echo "[e] failed to stop doushio"
|
|
echo " doushio failed" >>$LOG
|
|
else
|
|
echo "[-] doushio"
|
|
echo " doushio ok">>$LOG
|
|
fi
|
|
elif [[ "$1" == "restart" ]]; then
|
|
$0 stop
|
|
$0 start
|
|
elif [[ "$1" == "stat" ]]; then
|
|
cd $DOUSHIO
|
|
if ps -p $(cat doushio.pid) $(cat doushio.archive.pid); then
|
|
echo "ok"
|
|
else
|
|
echo "server is not up"
|
|
fi
|
|
else
|
|
echo "[e] usage: $0 (start|stop|restart|stat)"
|
|
fi
|