重複の可能性:
httpd(CentOS)のLogrotate設定
apacheでエラーログファイルを削除できますか。何か問題は?サーバースペースを食うから
ログファイルをクリアする必要がある場合は、
cp /dev/null /var/log/file
または
echo > /var/log/file
これにより、開いているファイルハンドルを閉じずにファイルが切り捨てられます。
編集:logrotate
を使用してファイルを処理することは、長期的な解決策として優れています。ファイルのトランケートは緊急対策です。
古いログファイルをすぐに削除するのではなく、logrotateを使用することをお勧めします。比較のために、後で何かをデバッグしたり、システムが正常に動作していたときのパターンを見つけたりするためにそれらが必要になる場合があります。
バックアップとリカバリが非常に求められているのには理由があります。ただし、これが運用サーバーでも重要でもない場合は、削除してもかまいません。
それらを使用しない場合は、削除できます。すべてのログを削除することをお勧めしますが、現在のログは削除しないでください。可能であれば、logrotateを使用してください。
使用中の場合、ログを削除すると、Apacheがリロードされ、削除されたばかりのファイルが再度開かれます。実際に試すことができるのは、logrotate、またはファイルを空にすることです。私はあなたがする必要があると思いますSIGUSR1
アパッチ。
この link が役立つ場合があります。
編集:ちょうどテスト済み:
# > /var/log/Apache2/access.log
# tail -F /var/log/Apache2/access.log
.. Still prints lines ....
# rm /var/log/Apache2/access.log ; touch /var/log/Apache2/access.log
# tail -F /var/log/Apache2/access.log
.. displays nothing ....
# kill -USR1 $(pidof Apache2)
# tail -F /var/log/Apache2/access.log
.. prints lines again ....
Edit2:Apacheのシグナルに関する詳細情報について@voretaqに感謝します。 SIGUSR1
は確かにSIGHUP
より暴力的ではありません。