主にLinuxサーバー設定記録をメモします

olddir コマンド指定

logrotateのコマンド指定「olddir」は指定したディレクトリ内にローテーションしたログを格納するコマンドであるが、
同じデバイス内のみでしか有効にならない
例えば、別のディスクのディレクトリにログを格納することができない
対処法
昔ながらにlastaction内にディレクトリ移動のスクリプトを記述することで「olddir」と同様なことを実現可能となる

/var/log/vsftpd.log {
    # ftpd doesn't handle SIGHUP properly
    rotate 1
    daily
    compress
    missingok
    lastaction
        EXT=`/bin/date +%Y%m%d`
        OLDEXT=`/bin/date +%Y%m%d --date "3 days ago"`
        LOGDIR=/var/log
        OLDDIR=/log/archive
        for file in vsftpd.log
        do
            /bin/mv ${LOGDIR}/${file}.1.gz ${OLDDIR}/$file-${EXT}.gz 2> /dev/null || true
            /bin/rm ${OLDDIR}/${file}-${OLDEXT}.gz 2> /dev/null || true
        done
     endscript
}

Menu

メニュー

アプリケーション

アプリケーション

その他

【メニュー編集】

管理人/副管理人のみ編集できます