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
何も表示されません。
ログローテーションが必要な正当なWebアプリケーションがある場合書き込み可能そして、httpd
明らかにWebサーバーのドキュメントルートでもそうすることができます...しかし、「私をハッキングして私のログを消去してください」という意味では、そのような設定がやや危険であることはわかりません。