/etc/init.d/XXX 파일 이용해 service XXX start 명령으로 java 실행을 하고싶습니다.
글쓴이: morolty / 작성시간: 목, 2013/08/22 - 12:01오후
1 #!/bin/bash 2 # chkconfig: 2345 81 30 3 4 . /etc/init.d/functions 5 . etc/profile 6 7 ROOT_HOME=$1 8 9 case "$1" in 10 start | START) 11 echo -n "Starting XXXXX." 12 java -jar "XXXXX.jar dbms" > /dev/null 2>&1 & 13 echo 14 ;; 15 stop | STOP) 16 echo -n "Shutting down XXXXX." 17 kill `ps -ef | grep "XXXXX.jar dbms" | grep -v grep | awk '{print $2}'` 18 echo 19 ;; 20 restart | RESTART) 21 $0 stop 22 sleep 5 23 $0 start 24 ;; 25 *) 26 echo "Usage: XXXXX {start|stop|restart}" 27 exit 1 28 esac 29 exit 0
대략 이러한 코드입니다.
질문이 두가지가 있는데요..
1. service XXXXX start를 해도 실행이 안되더라구요.. 경로 문제는 아닙니다 ......
2. stop 부분에서 kill명령어를 저렇게 생으로 써버려도 되나요? 만약 restart를 하게 되면 stop후에 start를 하게 되는데 stop에서 kill을 하면 쉘스크립트가 그대로 종료되어버리는 느낌이 나더군요...
읽어주셔서 감사합니다.
Forums:
java -jar "XXXXX.jar dbms" 이 부분이 좀 이상한데여.
이 명령은 XXXXX.jar가 있는 디렉토리에서 실행해야 제대로 작동할거 같은데
init에서 실행하면 XXXX.jar를 찾지못해서 에러 날거 같은데여
jsvc를 사용해보심이..
http://commons.apache.org/proper/commons-daemon/
댓글 달기