シェルを作るときに気にする
- 2重起動防止
- pidファイルの確認
- プロセス起動確認
を「/etc/init.d/functions」を使って実装してみる。
. /etc/init.d/functions SCRIPT_NAME=testscript PID_FILE=/var/run/${SCRIPT_NAME} # 起動の確認 ここで一気に確認 pidofproc ${SCRIPT_NAME} if [ $? -eq 0 ]; then echo "プロセスは既に起動しています" exit 1 fi # pidファイルが残っている場合の処理 if [ -f ${PID_FILE} ]; then echo "プロセスは停止していますがPIDファイルが存在します" echo "${PID_FILE}を削除します" rm -f ${PID_FILE} fi touch ${PID_FILE} echo $$ > ${PID_FILE} # 以下処理・・・