📂 경로 예시
/opt/tomcat/tomcat10/test/
├─ bin/
│ ├─ startup.sh
│ └─ shutdown.sh
├─ conf/
├─ logs/
├─ webapps/
└─ temp/
📄 /etc/systemd/system/tomcat.service
[Unit]
Description=Apache Tomcat 10 Service
After=network.target
[Service]
Type=forking
User=ubuntu
# 환경 변수 설정
Environment=UMASK=0007
Environment=JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
Environment=CATALINA_HOME=/opt/tomcat/tomcat10/test
Environment=CATALINA_BASE=/opt/tomcat/tomcat10/test
# Tomcat 실행 및 중지 스크립트
ExecStart=/opt/tomcat/tomcat10/test/bin/startup.sh
ExecStop=/opt/tomcat/tomcat10/test/bin/shutdown.sh
# 재시작 정책 및 보안 설정
Restart=always
RestartSec=10
UMask=0007
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable tomcat
sudo systemctl start tomcat
sudo systemctl status tomcat
journalctl -u tomcat -f # 실시간 로그
sudo systemctl restart tomcat # 재시작
sudo systemctl stop tomcat # 중지
| 설정 / 명령어 | 설명 |
|---|---|
CATALINA_HOME | Tomcat 설치 경로 |
CATALINA_BASE | 인스턴스별 Tomcat 경로 |
JAVA_HOME | Java 실행 환경 지정 |
UMask=0007 | 파일 권한 제한 (그룹만 접근 가능) |
Restart=always | 비정상 종료 시 자동 재시작 |
systemctl enable tomcat | 부팅 시 자동 실행 |
✍️ 한줄 정리:
/etc/systemd/system/tomcat.service파일에
JAVA_HOME,CATALINA_HOME,UMask등을 지정하면
Tomcat이 서버 부팅 시 자동으로 실행되고,
파일 권한까지 안전하게 관리된다.