2014년 4월 16일 수요일

logrotate 오류

CentOS 환경에서 log파일의 rotate를 위해 logrotae를 사용하고 있다.
공통적인 설정은 /etc/logrotate.conf에 설정되어 있으며, 여러개의 log파일을 개별로 설정하고자 할 경우 /etc/logrotate.d/ 아래에 개별 설정을 아래와 같이 할 수 있다.

logroate는 /etc/cron.daily/logrotate에 등록되어 일단위로 실행되게 되어있다. 하지만 logrotate가 정상동작하지 않아 몇가지를 확인해 보았다.
먼저, /var/log/cron 을 통해 cron job이 정상 실행된 것을 확인하였으나, /var/log/messages에 아래와 같은 ALERT 메시지가 남겨져 있었다.

또한 logrotate -v /etc/logrotate.conf 를 통해 테스트 한 결과 "error creating unique temp file: Permission denied" 와 같은 오류 메시지가 나타났다

이와 같은 logrotate가 정상적으로 실행되지 않은 이유는 SELinux의 enforcing mode 때문이었다.
이를 해결하기 위해서는 다음과 같이 실행할 수 있다.

단, 위와 같은 방법은 시스템 재부팅시 다시 원래대로 되돌아가기 때문에 영구적인 적용을 위해서는 /etc/sysconfig/selinux 의 내용을 변경해야 한다.

댓글 없음:

댓글 쓰기