コマンドを数珠つなぎした超簡易スクリプトです。コマンド名はお好きに。
ざっくりとテストはしました。
起動 [takeken@centos /home/takeken/redmine]$ service-redmine start rails start [OK] 状態確認 [takeken@centos /home/takeken/redmine]$ service-redmine status kidochu pid=7386 状態確認 停止中 [takeken@centos /home/takeken/redmine]$ service-redmine status teishichu 起動 すでに起動済み [takeken@centos /home/takeken/redmine]$ service-redmine start rails start [NG] already started 停止 [takeken@centos /home/takeken/redmine]$ service-redmine stop rails stop[OK] 停止 すでに停止済み というか動いてなかった時 [takeken@centos /home/takeken/redmine]$ service-redmine stop rails stop[NG] teishichu
ソース。
[takeken@centos /home/takeken/redmine]$ cat /usr/local/bin/service-redmine #!/bin/sh COMMAND=$1 PID=`ps aux | grep "[r]ails server -d" | awk '{ print $2 }'` case $COMMAND in "start" ) if [ ! -s $PID ] ;then echo "rails start [NG] already started" else rails server -d > /dev/null echo "rails start [OK]" fi ;; "status" ) if [ ! -s $PID ] ;then echo "kidochu pid=$PID" else echo "teishichu" fi ;; "stop" ) if [ ! -s $PID ] ;then sudo kill "$PID" echo "rails stop[OK]" else echo "rails stop[NG] teishichu" fi ;; esac
環境:
[takeken@centos /home/takeken/redmine]$ cat /etc/redhat-release Scientific Linux release 6.6 (Carbon) [takeken@centos /home/takeken/redmine]$ uname -ri 2.6.32-504.3.3.el6.x86_64 x86_64
CentOSと思っていたらSLだった!!
ヽ(#゚Д゚)ノ┌┛(ノ´Д`)ノ