새소식

🏫 infra

tomcat catalina.out 생성 안되는 문제 해결 방법

728x90
 

🤔 Question

👉 Tomcat 서버에서 catalina.out 파일이 생성되지 않는 문제는 일반적으로 다음과 같습니다. 저는 보통, 톰캣 서버 제대로 안 껐다 킨 경우였습니다. 혹시 모르니 해결 방법을 하나씩 확인해 보세요.

 

🎯 Tomcat을 완전히 재시작하기

👉 Tomcat은 실행 중일 때 catalina.out을 사용하고 있기 때문에, 실행 중에 파일을 삭제하면 더 이상 로그를 기록하지 않을 수 있습니다.

 

✅ 해결 방법:

systemctl stop tomcat  # 또는
service tomcat stop    # 또는
./shutdown.sh          # Tomcat 수동 종료

rm -f $CATALINA_HOME/logs/catalina.out  # 파일 완전히 삭제

systemctl start tomcat  # 또는
service tomcat start    # 또는
./startup.sh           # Tomcat 수동 시작

Tomcat을 완전히 종료한 후 파일을 삭제하고 다시 시작하면 자동으로 생성됩니다.

 

🎯 파일 권한 문제 확인

👉 Tomcat이 실행되는 사용자(tomcat 또는 root)가 logs 디렉터리에 쓰기 권한이 없으면 catalina.out을 생성할 수 없습니다.

 

✅ 권한 검토 명령어:

ls -ld $CATALINA_HOME/logs
ls -l $CATALINA_HOME/logs/catalina.out  # (파일이 있으면 권한 확인)

 

권한 검토 결과 예시:

drwxr-xr-x  2 tomcat tomcat 4096 Feb 10 10:00 logs
-rw-r--r--  1 tomcat tomcat  123 Feb 10 10:05 catalina.out

 

✅ 해결 방법:

chown -R tomcat:tomcat $CATALINA_HOME/logs
chmod 755 $CATALINA_HOME/logs

 

🎯 디스크 공간 확인

👉 서버의 디스크 공간이 부족하면 catalina.out이 생성되지 않을 수 있습니다.

df -h

디스크가 가득 찼다면 불필요한 로그 파일을 삭제하거나 용량을 확보하세요.

 

🎯 logrotate 수동 실행

👉 시스템에서 logrotate가 catalina.out을 관리하는 경우, 설정이 잘못되어 로그가 생성되지 않을 수 있습니다.

 

✅ 해결 방법:
/etc/logrotate.d/tomcat 또는 /etc/logrotate.d/catalina 파일을 확인
copytruncate 옵션이 있는지 확인 (없으면 추가)

마지막으로 logrotate 수동 실행!

logrotate -f /etc/logrotate.d/tomcat

 

☔ 정리

👉 Tomcat 완전 재시작 (shutdown.sh, rm catalina.out, startup.sh), logs 폴더 및 catalina.out의 권한 문제 해결, 디스크 공간 확인 (df -h), logrotate 설정을 확인하고 copytruncate 적용!


위 방법을 하나씩 적용하면서 문제를 해결해 보세요. 🚀

 

If I was of any help to you, please buy me coffee 😿😢😥

If you have any questions, please leave them in the comments

🧭 References

[1] reference : https://doctorson0309.tistory.com/

[2] Ads : https://play.google.com/store/apps/details?id=io.cordova.seoulfilter

반응형
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.