회사에서 공교롭게도 우분투를 14와 16을 사용...
근데 두 버전간 차이가 생각보다 다양하네요.
이러한 저런한 문제들도 많았지만,
가장 중요한 서비스 등록 방법도 다르기도하고!
일단 구글링을 통해 정리를 해보겠어요.
14.04 LTS
1. /etc/init.d 에 서비스 파일 생성
2. 파일내용은 뭐 마다 다르겠지만 대강 이런...
### BEGIN INIT INFO
# Provides: tomcat
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop:
# Short-Description: Apache Tomcat
### END INIT INFO
#source /etc/profile
tomcat=${tomcat_path} #톰캣 설치 경로
startup=$tomcat/bin/startup.sh
shutdown=$tomcat/bin/shutdown.sh
start() {
echo -n $"Starting Tomcat service: "
sh $startup
echo $?
}
stop() {
echo -n $"Stopping Tomcat service: "
sh $shutdown
echo $?
}
restart() {
stop
start
}
status() {
ps -aef | grep nhccFront | grep -v .out | grep -v /bin/sh | grep -v grep
}
# Handle the different input options
case "$1" in
start)
start
;;
stop)
stop
;;
status)
status
;;
restart)
;;
*)
echo $"Usage: $0 {start|stop|restart|status}"
exit 1
esac
exit 0
3. update-rc.d 서비스파일명 defaults
16.04 LTS
1. /etc/systemd/system 에 서비스 파일 생성
2. 파일내용은 14버전과 완전 다름...
[Unit]
Description=Apache Tomcat Web Application Container After=network.target
[Service]
Type=forking
ExecStart=$tomcat/bin/startup.sh
ExecStop=$tomcat/bin/shutdown.sh
RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target
3. systemctl enable 서비스파일명
뭔가 꼬여서 잘 안된다면...
systemctl daemon-reload
systemctl reset-failed
위 두줄을 이용 하면 끝
또한 등록된 서비스를 확인 할 경우
systemctl list-units --type service
위 명령어를 이용하지만 서비스가 표시되지 않을 경우에는
systemctl list-units --type service --all을 하면 나와유
'서버 > 리눅스' 카테고리의 다른 글
특정 내용을 포함한 파일 찾기 (0) | 2022.02.21 |
---|---|
Ubuntu 계정 생성 및 sudo 권한 부여 (0) | 2019.04.05 |