Systemdが使用できない環境で、shellscriptの永続化を行いたいときに行った手順です。(Amazon Linuxとかとか)
myscript
という名前のスクリプトをサービス登録する前提で進めます。
$ cd /etc/init.d
$ sudo touch myscript
$ sudo vi ./myscript
myscriptを以下の内容で保存します。
myscript
#!/bin/bash
#
# chkconfig: 2345 69 1
# description: myscript
case "$1" in
start)
echo "Start"
/usr/local/sbin/myscript
return 0
;;
stop)
echo "Stop"
killall myscript
return 0
;;
*)
echo $"Usage: myscript {start|stop|restart}"
;;
esac
# chkconfig: 2345 69 69
の部分は起動時のランレベルと、起動時の優先度、停止時の優先度をしている箇所になります。
# description: myscript
の部分はサービス登録名を指定します。
作成したshellscriptの実行権限を変更します。
$ sudo chmod 755
サービス登録と起動設定を行います。
$ sudo chkconfig --add myscript
$ sudo chkconfig myscript on
サービスの起動
$ chkconfig myscript start