logrotate
Komut satırında hangi dosyanın döndürüleceğini söylemezsiniz . Bir yapılandırma dosyası iletirsiniz. Yani sizin durumunuzda, logrotate
okuma /var/log/syslog
ve bir yapılandırma dosyası olarak ayrıştırmaya çalışıyor ve başarısız oluyor (bu nedenle hatalarınız).
Döndürmek istiyorsanız /var/log/syslog
, bir logrotate
yerde bir yapılandırma dosyasında listelenmesi gerekir ve sadece çalıştırın logrotate
. Yakın zamanda döndüyse, logrotate -f
tekrar yapmaya zorlamak için.
İşte /var/log/syslog
Debian için örnek bir giriş ,
/var/log/syslog
{
rotate 7
daily
missingok
notifempty
delaycompress
compress
postrotate
invoke-rc.d rsyslog reload > /dev/null
endscript
}
Yani, bir dosyada, normalde ya /etc/logrotate.conf
da bir dosya snippet'i olarak puanlarınızı /etc/logrotate.d
varsayarak buna ihtiyacınız /etc/logrotate.conf
vardır ve sonra sadece koşarsınız logrotate /etc/logrotate.conf
.
Debian'ı çalıştırdığınız için, bunların hepsi yerinde ve gerçekte yapmanız gereken tek şey çalıştırmaktır logrotate -f /etc/logrotate.conf
(not, bu şu anda logrotate'te yapılandırılmış olan tüm günlükleri döndürecektir ).
Eğer varsa gerçekten sadece döndürmek istiyor /var/log/syslog
, sadece yapan bir yapılandırma dosyası oluşturmak için ihtiyaç duyacağı içeriğine dayalı bir günlük, /etc/logrotate.conf
+ /etc/logrotate.d/rsyslog
.