본문 바로가기
LINUX

linux shell script에서 프로세스 종료 후 바로 실행 시 실행이 안됨

by Rainbound-IT 2023. 7. 28.
반응형

목차

     

    증상

    logrotate로 날짜별로 로그를 쌓으려고 postrotate에 tomcat startup.sh 과 shutdown.sh를 넣었는데

    이상하게 정해진 날짜에 쌓이긴하는데 새로그에는 쌓이지 않고 프로세스가 실행되지 않았다.

     

     

    원인

    다양하게 실험을 해보던 중 kill 한뒤 startup.sh 하면 정상적으로 출력되는데  shutdown.sh을 사용하면 정상적으로 재시작이 되지않았습니다.

     

    그래서 이 둘의 차이점을 생각해보니 kill의 경우 바로 프로세스가 종료가 되나 shutdown의 경우 여러 과정을 거치다보니 프로세스가 종료되는데 좀더 시간이 걸릴거라 생각이 들었습니다.

     

     

    해결

    종료되는 시간이 오래걸린다면 시작시간을 조금 두면 될거라 생각이 들었습니다.

    ../tomcat/bin/shutdown.sh
    
    sleep 5
    
    ../tocmat/bin/startup.sh

     

    종료후 sleep이라는 명령어를 입력하여 시작시간을 늦추엇습니다.

     

    이것을 적용하니 정상적으로 기동하는것을 보았습니다.

     

    끝!

    반응형

    댓글