logrotate
古いログファイルをリネームし、圧縮し、いずれ削除するツール。おしゃべりなサービスがディスクを埋めると、たいてい午前3時にすべてが止まるので、これが必要になる。
設定は /etc/logrotate.d にサービスごとに1ファイルずつ置き、cronまたはsystemdタイマーで定期実行する。ローテーションの頻度、保持する世代数、古いファイルを圧縮するかどうかを指定する。肝心なのは、開いたままのファイルの扱いだ。標準のやり方はファイルをリネームしてからプロセスにシグナルを送り、新しいファイルを開かせる。これを怠ると、サービスはリネーム後のファイルへ書き続け、見えないままディスクを食う。copytruncate はコピーしてからゼロに切り詰める方式で、シグナルなしで動くが、その隙間の行を失うことがある。