Logrotate
在 logrotate 中使用日期格式
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 上,如何將 logrotate 配置文件中的 dateformat 選項設置為不僅在旋轉的文件名中具有 YYYYMMDD 格式,而且還應該有其他的東西,小時或分鐘或任何唯一的。
問題是它需要每天輪換一次以上,所以使用這一天是不行的,因為“已經存在”..
更新:
SERVER:~ # rpm -qa|grep -i ^logrotate logrotate-3.7.3-13.17.1 SERVER:~ #
該
dateformat
選項是在版本 3.7.7 中引入的,因此您需要升級。我確實知道 SLES 11 的儲存庫中提供了 3.7.7,但我不知道 SLES 10。(除此之外,我絕對建議您盡快將伺服器升級到更新版本的 SLES - 雖然它還沒有完全 EOL,但不會有更多的服務包,而且它正在獲得接近其生命週期的終點……)