メインのlogrotateの実行中に実行したくないlogrotate.dの下にファイルがあります。このための別のジョブを/etc/crontab
に作成しました
45 23 * * * root mv /var/log/RemoteSystems/*/*.log /var/log/Archiv/ && logrotate /etc/logrotate.d/test
ジョブはファイルをディレクトリから別のディレクトリに移動し、logrotateを適用します。このジョブを/etc/crontab
のメインのlogrotateジョブとは別に実行したいと思います。問題は、「test」が/etc/logrotate.d/
の下にあるため、メインのlogrotateでもう一度実行されることです。実行する「テスト」を除外できるlogrotate.confに挿入できるコマンドはありますか? 「テスト」ファイルが/etc/logrotate.d
にない場合、これは発生しませんが、「テスト」を同じパスに維持したいと思います。
マニュアルman logrotate.conf
を見ると、特定の拡張子を持ついくつかのファイルを除外できるfind tabooext
オプションを読むことができます。
tabooext [+] list
The current taboo extension list is changed (see the include directive for information on the taboo extensions). If a + precedes the
list of extensions, the current taboo extension list is augmented, otherwise it is replaced. At startup, the taboo extension list
contains .rpmsave, .rpmorig, ~, .disabled, .dpkg-old, .dpkg-dist, .dpkg-new, .dpkg-bak, .dpkg-del, .cfsaved, .ucf-old, .ucf-dist,
.ucf-new, .rpmnew, .swp, .cfsaved, .rhn-cfg-tmp-*
.disabled
などのデフォルトの除外拡張子の1つを選択するか、次のような独自の追加の拡張子を指定できます。
tabooext + .test
必要なのは、ファイル名を/etc/logrotate.d/test
に変更して、/etc/logrotate.d/test.disabled
のようなこれらの拡張子を付けることです。
以下のように設定ファイルを編集できます:
前
include /etc/logrotate.d
後
include /etc/logrotate.d/*.conf
これにより、test
ファイルを除いて、.conf
で/etc/logrotate.d/
で終わるファイルのみがlogrotateによってピックアップされます。
Logrotateで使用されているファイルが/etc/logrotate.d/
にすでにある場合は、これらを更新して.conf
を含める必要があります。
test
ファイルを/etc/logrotate.d/
ディレクトリ。logrotateによって自動的に取得されます。
手動で実行したい場合は、場所に関係なく、特定のファイルに対してlogrotateを実行するように強制できます。
logrotate --force /tmp/test
どこ /tmp/test
は、ファイルの新しい場所です。
「テスト」に触れたくない場合は、include /etc/logrotate.d
ディレクティブ/etc/logrotate.conf
。デフォルトではディレクトリを参照するため、一部のファイル拡張子を除いて、そのディレクトリ内のすべてのファイルを解析します。
試すことができるのは、/ etc/logrotate.dの下の個々のファイルを参照するようにインクルードディレクトリを変更することです。たとえば、/ etc/logrotate.d/aptなどです。そのリストから「test」を除外します。私はこれをテストしていませんが、試す価値があるかもしれません。