답변:
나는 그것이 상태 파일의 내용이라고 믿습니다 /var/lib/logrotate.status
. 각 파일에는 마지막으로 회전 한 날짜 인 한 줄이 있습니다. 현재 날짜와 파일의 날짜 사이의 일 수 (매일 1, 매주 7 등)를 고려하여 지정된 파일이 회전해야하는 날짜에 logrotate를 실행하면 파일이 회전됩니다.
logrotate는 실행되는 시간에 신경 쓰지 않는 것 같습니다. 일반적으로 2355에서 실행 되더라도 대신 0130에서 실행하면 매일 표시되고 어제 마지막으로 수행 된 파일이 계속 회전합니다. 그러나 그렇게하면 오늘 날짜가 상태 파일 (회전 된 파일에 대해)에 저장되므로 2355에서 두 번째 실행하면 아무것도하지 않습니다.
logrotate 매뉴얼 페이지에서 :
일반적으로 logrotate는 매일 cron 작업으로 실행됩니다. 해당 로그에 대한 기준이 로그 크기를 기반으로하고 logrotate가 하루에 두 번 이상 실행되지 않거나 -f 또는 -force 옵션이 사용되지 않는 한 하루에 두 번 이상 로그를 수정하지 않습니다.
/var/lib/logrotate/status
과 같은 경우에만 회전합니다 (파일은 제 경우와 같습니다).