サーバーがあります」Node.js サーバー.jsそして、クラッシュした直後に再起動したいが、最後の再起動が1秒より長い場合にのみ可能です。
これがstart_server.sh
再開されます。私はそれを@reboot
crontabに入れて、サーバーが起動したときに正常に起動しました。
しかし、どのようにstart_server.sh
端末で実行し、後で端末を閉じることができますか?では、終了せずに正常に動作しますか?
私はこれを試しましたが、nohup start_server.sh
うまくいきません。また、STDOUTをログファイルにリダイレクトしたいと思います。
server.shの起動
#!/bin/sh
set -x
count=0
while :
do
if test $count -lt 40
then
mail -s "server.js started just now" [email protected] < /dev/null
fi
count=`expr $count + 1`
date1=`date +%s` #get unix time
cd /home/login/railways/nodejs
echo "Starting time is $date1"
/usr/bin/nodejs server.js >> server.log
date2=`date +%s` #get unix time
if test $date1 -eq $date2
then
msg="exiting as process has failed"
echo $msg
if test $count -lt 40
then
mail -s $msg [email protected] < /dev/null
fi
sleep 10
fi
echo "restarting the process"
sleep 1
done