画面ログファイルのサイズを制限する方法

画面ログファイルのサイズを制限する方法

私はgnu-screenで私のプログラムを実行し、ファイル(log on/logfileオプションの.screenrc)のロギングを有効にします。ただし、時間が経過するとログファイルが大きくなりすぎます。

ログファイルのサイズを制限する方法はありますか?

答え1

ログサイズをリアルタイムで制御したい場合を除き、logrotatewithを使用してcronこれを実行できます。

screenlog.logディレクトリ内で回転すると仮定すると、/home/username/次のような構成ファイルが生成されます。

screenlog-rotate.conf:

/home/username/screenlog.log {
  size 100k
}

logrotate /home/username/screenlog-rotate.conf次に、定期的に実行されるクローンジョブとして実行または設定します。logrotateデフォルトでは、rootとして実行する必要があり、設定ファイル(上記)もrootとして編集する必要があることにscreenlog-rotate.conf注意してください。それ以外の場合は、設定された権限が正しくないというメッセージが表示されます。フラグをchown実行してあなたを理解しているかどうかをテストしてください。logrotate-v

上記の設定ファイルは非常に簡単です。古いログファイルは保持されません。。ファイルが指定されたサイズを超えると、ファイルは削除されますが、画面には通常どおりログが出力されます(テスト済み)。古いログを保存するには、保存する循環ログの数を追加する必要がありますrotate NN

man 8 logrotate設定方法の詳細を参照してくださいlogrotate。関連する質問は次のとおりです。使用方法>>ログファイルサイズの制限

logrotate Arch Linuxには基本的に含まれているようですが、他のディストリビューションでもそういうものかは分かりません。私はDebianが少なくともデフォルトでそれをインストールすると予想しており、パッケージマネージャを使用してインストールするのは簡単です。

関連情報