====== 시스템 부팅시 자동 시작 스크립트 ======
===== CentOS6 =====
파일 경로 \\
/etc/rc.d/init.d/tomcat \\
\\
파일 내용
#
# tomcat Start/Stop Script for the Tomcat Server
#
# chkconfig: 2345 91 14
# description: start/stop script for tomcat server
# source function library
. /etc/rc.d/init.d/functions
export LANG=ko_KR.euckr
export JAVA_HOME=/data/apps/search/java
export TOMCAT_HOME=/data/apps/search/tomcat
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/usr/local/glibc-2.14
export CLASSPATH="."
PRGDIR="$TOMCAT_HOME/bin"
# Check that target executable exists
if [ ! -x "$PRGDIR"/"$EXECUTABLE" ]; then
echo "Cannot find $PRGDIR/$EXECUTABLE"
echo "This file is needed to run this program"
exit 1
fi
case "$1" in
start)
echo -n "Starting Tomcat service: "
daemon --user search "$PRGDIR"/startup.sh
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
;;
stop)
echo -n "Shutting down Tomcat service: "
daemon --user search "$PRGDIR"/shutdown.sh
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac
echo
exit 0
##################################################
> 다음과 같이 운영 user을 지정할 수 있음
> daemon --user search "$PRGDIR"/startup.sh
> iptable을 활용하여 8080을 80포트로도 서비스 할 수 있음
> iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
\\
등록 및 사용 방법
[root@dev ~] chkconfig --add tomcat
[root@dev ~] service tomcat start
[root@dev ~] service tomcat stop
===== CentOS7 =====
시스템 부팅시 자동 시작 스크립트
파일 경로 \\
/usr/lib/systemd/system/tomcat7.service \\
\\
파일 내용
[Unit]
Description=tomcat7
After=network.target syslog.target
[Service]
Type=forking
#tomcat이 독립적이면 root, 아파치연동 되어있으면 search
User=root
Group=root
ExecStart=/opt/search/tomcat7/bin/catalina.sh start
ExecStop=/opt/search/tomcat7/bin/catalina.sh stop
#Umask, RestartSec와 Restart를 쓰면 10초에 한번씩 수동으로 죽이든 오류로 죽든 무조건 프로세스를 살리게 된다. (주의)
Umask=0022
ReStartSec=10
Restart=always
[Install]
WantedBy=multi-user.target
\\
등록 및 사용 방법
[root@dev ~] systemctl enable /usr/lib/systemd/system/tomcat7.service
# tomcat7.service 또는 tomcat7 입력 가능
[root@dev ~] systemctl start tomcat7.service #시작
[root@dev ~] systemctl start tomcat7.service #정지
[root@dev ~] systemctl status tomcat7.service #상태정보
\\
수정
tomccat7.service 내용이 변경 되면 그냥 시작 되지 않는다.\\
[root@dev ~] systemctl daemon-reload
#기타 서비스 구동 정보 로그
[root@dev ~] journalctl -xe
[root@dev ~] journalctl -f #tail 처럼 볼 수 있음
===== Windows =====
서비스 등록
===== Ref =====
[[https://victorydntmd.tistory.com/215|CentOS7 service(systemd unit) 등록 관련 사용법 및 설명 ]]
{{tag>주레피 자동시작스크립트}}