Yanıtlar:
logrotate
crontab
çalışmak için kullanır . Planlanmış bir çalışmadır, bir arka plan programı değildir, bu nedenle yapılandırmasını yeniden yüklemeye gerek yoktur.
Ne zaman crontab
yürütür logrotate
, otomatik olarak yeni bir yapılandırma dosyası kullanır.
Konfigürasyonunuzu test etmeniz gerekirse, logrotate
aşağıdaki komutu kullanarak kendi başınıza da çalıştırabilirsiniz :
logrotate /etc/logrotate.d/your-logrotate-config
Veya yorumlarda belirtildiği gibi uygulayın, kesin bir cron.daily açıklaması için slm'nin cevabına bakın.logrotate
, komutun çıktısındaki satırı tanımlayın ve crontab -l
komut satırını
crontab -l
ve onu çalıştırmaktır.
logrotate
Bir sahiptir -d
test için seçeneği (veya "ayıklama"), en az bir kez bununla çalıştırmaya öneriyoruz.
logrotate
Çeşitli dağıtımlarda gördüğüm ayarların çoğu bitiyor /etc/cron.daily
. Orada uygun olarak adlandırılmış bir kabuk betiği var logrotate
.
$ ls -l /etc/cron.daily/logrotate
-rwxr-xr-x 1 root root 180 May 18 2011 /etc/cron.daily/logrotate
Manuel olarak çalışmasını sağlamak istiyorsanız sadece betiği root olarak çalıştırın:
$ sudo /etc/cron.daily/logrotate
Tipik olarak orada bulunan bir betiğe bakarsanız, logrotate
basitçe logrotate
+ yapılandırma dosyasının yolunu çalıştırarak el ile nasıl çalışabileceğinizi gösterir .
#!/bin/sh
/usr/sbin/logrotate /etc/logrotate.conf
EXITVALUE=$?
if [ $EXITVALUE != 0 ]; then
/usr/bin/logger -t logrotate "ALERT exited abnormally with [$EXITVALUE]"
fi
exit 0
Cron üzerinden otomatik olması gerekir. Değişikliklerinizi test etmek için onu zorlayabilirsiniz.
Genel logrotate için:
sudo logrotate -v -f /etc/logrotate.conf
Tek bir conf dosyası için:
sudo logrotate -v -f /etc/logrotate.d/someapp.conf
-f
kuvvet rotasyon -d
için, aynı zamanda Kuru çalışma olan hata ayıklama için de vardır , bu yapacağı her şeyi basar, ancak yapmaz.
logrotate
günde bir kez çalışması planlanıyor.