
cat /etc/logrotate.d/syslog
...
/var/log/messages {
daily
compress
dateext
dateformat "-%Y%m%d-%s"
maxage 90
rotate 90
missingok
notifempty
size +4096k
create 644 root root
sharedscripts
postrotate
/etc/init.d/syslog reload
endscript
}
...
SERVER:/var/log # /usr/sbin/logrotate /etc/logrotate.conf >/dev/null
error: syslog:21 unknown option 'dateformat' -- ignoring line
error: syslog:21 unexpected text
error: destination /var/log/messages-20141002.gz already exists, skipping rotation
SERVER:/var/log #
尋ねる:SLES10で回転したファイル名にYYYYMMDD形式を持つだけでなく、時間、分、または一意の形式も含めるようにlogrotate構成ファイルでdateformatオプションを設定するにはどうすればよいですか?
問題は、1日に1回以上回転する必要があるため、「すでに存在する」ため、この日を使用すると機能しないことです。
修正する:
SERVER:~ # rpm -qa|grep -i ^logrotate
logrotate-3.7.3-13.17.1
SERVER:~ #
答え1
このdateformat
オプションはバージョン 3.7.7 で導入されたため、アップグレードが必要です。 SLES 11用のリポジトリで3.7.7を使用できることはわかっていますが、SLES 10についてはわかりません。
(さらに、できるだけ早くサーバーを最新バージョンのSLESにアップグレードすることをお勧めします。完全に中断されることはありませんが、もはやService Packがなくなり、寿命がますます近づいています。終了...)