このコマンドを使用すると、サイズが山積みになっているファイルがほとんどないことがわかりました。
find / -size +50M
それらのほとんどはログファイルなので、ログファイルを削除しても安全かどうか知りたいです。問題のログファイルは次のとおりです。
/var/log/httpd/mySite.com-access.log.1
/var/log/httpd/access_log.1
/var/log/httpd/mySite.com-access.log
/var/log/maillog.4.gz
/var/log/maillog
サーバーのOSバージョンは次のとおりです。cat/ etc/centos-release CentOSリリース6.2(最終版)
そして、削除しても問題がない場合は、どうすればよいですか? rm
を使用してファイルを削除するだけですか、それとも次のようにして「内容をクリア」する必要がありますか。
cat /dev/null > access_log.1
それらを削除しても安全ですか?おそらくそうです。メールログなどの一部のファイルは、cat /dev/null > somefile
を介してそれらを連結したい場合があります。ほとんどの場合、.1で終わるファイルは、ログローテーションによってローテーションされています。その構成ファイルを確認してください。ログローテーションによって古いファイルも削除されることがよくあります。したがって、多くの場合、.1で終わるログファイルを削除できます。
天気かどうかは別の問題ですが、ログファイルを削除することをお勧めします。これが誰のサーバーであるかなどによっては、指定された期間保持する義務のあるファイルを削除すると、法的な影響が生じる可能性があります。サーバーの場合は、必要と思われる限りファイルを保持しておくとよいでしょう。ただし、ファイルを削除する前に、よく繰り返されるメッセージや「エラー」、「拒否」、「中止」というフレーズを探して、ファイルの一部を調べるとよい場合がよくあります。
logrotate
は通常、デフォルトで毎週ローテーションし、4つの古いログを保持するように設定されています。これを毎日に変更し、28個の古いログを保持することで、より一貫したスペース使用量を得ることができます。引き続き同じ期間を保持していますが、過去28日間のうち26日間は、週が進むにつれて27日から21日間の間で変動するのではなく、常に圧縮されます。 logrotate設定のdelaycompress
オプションを削除することで、過去28日間のうち27日間を作成できます。
Logrotateの設定は/etc/logrotate.d/
にあります。通常、ログを生成するサービスごとに1つのファイルがあります。
削除に関する限り、すでにローテーションされている古いログファイル(.1
または.4.gz
で終わるログファイル)の場合はそれほど重要ではありませんが、書き込み中のログファイルの場合はrm
は、ファイルがそのディレクトリに存在しなくなっても、プロセスがファイルを開いたまま書き込みを行っているという奇妙な状況を引き起こす可能性があります。ディスク領域を解放することはなく、書き込まれているログにアクセスすることもできません。各サービスには、新しいログファイルを開始する必要があることを通知するための異なる方法があり、これらは通常、logrotate構成ファイルのpostrotate
セクションに体系化されています。
それらが必要ない場合(必要な場合はよく確認してください。エラーやセキュリティ違反などがあった可能性があります)、削除できます。安全のために、削除(または「」をエコー)した後、これらのログファイルを生成するサービスを再起動します。
ログファイルのサイズに常に問題がある場合は、「logrotate」実装をインストールすることを検討してください。この実装自体は、指定された時間が経過するとログファイルを圧縮、アーカイブ、および削除します。
なぜログファイルを削除するのですか?
スペースが足りない場合は、CDまたはDVDに書き込むか、USBフラッシュドライブにリダイレクトしてください。必要に応じて、少なくともどこかに置いておくことができます。