파일 크기가 제한을 초과 한 후 파일을 회전시키지 않는 로그 회전.


9

logrotate 맨 페이지에서.

해당 로그의 기준이 로그의 크기를 기준으로하지 않는 한 하루에 두 번 이상 로그를 수정하지 않습니다.

매뉴얼 페이지에 따르면 구성이 로그 크기를 기반으로하는 경우 logrotate는 파일을 회전해야합니다. 그러나 파일이 100k보다 크면 파일이 커지지 않습니다.

누군가 문제가 무엇인지 지적 할 수 있습니까?

내 구성

/home/jetech/work/lampstack-5.3.9-0/apache2/logs/access_log  {
    copytruncate
    compress
#    dateext
    rotate 365
    size 100k
    olddir /home/jetech/work/lampstack-5.3.9-0/apache2/old_logs
    notifempty
    nomail
    missingok
}

답변:


17

파일이 회전하지 않는 것을 어떻게 알 수 있습니까?

내가 가지고있는 데비안 6 Linode에서 기본 구성 logrotatecron하루에 한 번만 실행되도록 예약되었으며 매우 이상한 시간에 예약되었습니다 . 하루에 한 번만 실행하는 경우 당연히 하루에 한 번만 구성을보고 비교를 수행하고 필요한 회전을 수행 할 수 있습니다.

실제로 실제로 로그 로테이션을 실행하고 있습니까? 당신 확인 할 수 있습니다 /etc/cron*/etc/cron*/*실행하도록 예약시기와 빈도를 logrotate에 볼 수 있습니다.

예를 들어 logrotatescript가에있는 경우 /etc/cron.daily로 이동 /etc/cron.hourly하거나 시간이 충분하지 않은 경우 /etc/cron.d/다음 내용 으로 파일을 작성하여 logrotate10 분마다 실행하십시오 .

*/10  *  *  *  *   root    /usr/sbin/logrotate /etc/logrotate.conf

0

그래서 logrotate실제로이 같은 작품,

  • 구성에서 실행 빈도를 지정합니다 ( 매일 , 매시간 , 매월 )
  • 의 항목이 있습니다 /etc/cron.xxx에 대한 logrotate에이 실행할가.
  • crontab을 통해 logrotate 실행

매일 지정된 시간 (/ etc / crontab)으로 매일 을 언급 한 경우 crontab 프로세스는 회전을 위해 logrotate 프로세스를 실행 합니다. 따라서 프로세스가 실행되지 않으므로 파일 크기 제한이 작동하지 않습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.