Logrotate는 자동으로 회전하지 않지만 오류를 표시하지 않고 logrotate -d 및 logrotate -f와 함께 사용할 수 있습니다. 하지만 매일 자동으로 실행되는 것은 아닙니다. 다음은 logrotate -d 출력입니다.
logrotate -d /etc/logrotate.d/lumen
reading config file /etc/logrotate.d/lumen
Allocating hash table for state file, size 15360 B
Handling 1 logs
rotating pattern: /var/www/*/storage/logs/*.log after 1 days (365 rotations)
empty log files are rotated, old logs are removed
switching euid to 48 and egid to 48
considering log /var/www/testdir/storage/logs/laravel.log
log needs rotating
rotating log /var/www/testdir/storage/logs/laravel.log, log->rotateCount is 365
Converted ' -%Y%m%d' -> '-%Y%m%d'
dateext suffix '-20190425'
glob pattern '-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'
compressing log with: /bin/gzip
fscreate context set to unconfined_u:object_r:httpd_user_rw_content_t:s0
renaming /var/www/testdir/storage/logs/laravel.log to /var/www/testdir/storage/logs/laravel.log-20190425
switching euid to 0 and egid to 0
답변1
Cron이 설치되어 있는지/Cron Job이 있는지 확인해야 합니다.
답변2
/var/www
나는 당신이 아래에 있는 로그를 순환하고 있으며 logrotate
다음 SELinux 관련 메시지를 발행하고 있다는 것을 알 수 없습니다 .
fscreate context set to unconfined_u:object_r:httpd_user_rw_content_t:s0
물론 logrotate
SELinux 유형을 httpd_user_rw_content_t
.
그러나 더 제한된 환경에서 logrotate
실행하는 사람은 cron
이를 허용하는 조치를 취하지 않으면 이 작업을 수행하지 못할 수도 있습니다.
selinux-policy-doc
이 패키지가 설치된 RHEL 7.9 이상 에서는 logrotate와 관련된 man logrotate_selinux
어떤 것도 httpd_user_rw_content_t
어떤 식으로든 나열되지 않습니다.
로그 회전이 필요한 합법적인 웹 애플리케이션이 있는 경우쓰기 가능에 의해 httpd
그리고 분명히 웹 서버의 문서 루트에서도 그렇게 할 수 있습니다... 하지만 "나를 해킹하고 내 로그를 지우십시오"라는 의미에서 그러한 구성이 다소 위험하다는 것을 알 수는 없습니다.