Bilgisayarınız kapalıyken (veya cron arka plan programı çalışmıyorsa), cron işleri başlatılmaz.
Bilgisayar kapalıyken bu zamanlarda gerçekte çalıştırmak istediğiniz işleriniz varsa, anacron kullanın. Varsayılan olarak, daha fazla bilgi için "man anacron", "man anacrontab" veya / etc / anacrontab dosyasına bakın.
Ubuntu varsayılan olarak crontab girişleri için varsayılan olarak anacron kullanır:
/etc/cron.daily
/etc/cron.weekly
/etc/cron.monthly
Kalan crontab'ları özellikle ana cron cini tarafından idare edilecek şekilde bırakmak:
/etc/crontab
/etc/cron.d
/var/spool/cron
NOTLAR
Anacron'un kendisi daemon olarak çalışmaz, ancak sistem başlatma komut dosyalarına ve çalıştırmak için cron'a dayanır.
Baktığım Ubuntu 8.04 kutusunda, /etc/init.d/anacron önyükleme sırasında ve her sabah saat 07: 30'da cron tarafından çalıştırılıyor.
/Usr/share/doc/anacron/README.gz adresindeki README, man sayfalarında bulunandan biraz daha fazla bilgiye sahiptir.
ÖRNEKLER
Basit "günlük", "haftalık", "aylık" işler için, yukarıdaki /etc/cron. Anacron günlük / haftalık / aylık olarak çalıştırmayı önemser ve eğer bilgisayar kapalıysa, "haftalık" betikler normal olarak çalışırsa, bilgisayarın bir sonraki açılışında onları çalıştırır.
Başka bir örnek olarak, burada bir komut dosyanız olduğunu varsayalım: /usr/local/sbin/maint.sh
Her üç günde bir çalıştırmak istiyorsanız, / etc / crontab içindeki standart giriş şöyle görünür:
# m h dom mon dow user command
0 0 */3 * * root /usr/local/sbin/maint.sh
Bilgisayarınız ayın 3'ünde saat 00: 00'da açık değilse, iş 6'ya kadar çalışmaz.
Bunun yerine, bilgisayar kapalıyken 4. sırayı çalıştırmak ve 3. sırayı "kaçırmak" için, / etc / anacrontab dizinini kullanırsınız (/ etc / crontab dizininden kaldırmayı unutmayın):
# period delay job-identifier command
3 5 maint-job /usr/local/sbin/maint.sh
Yukarıdaki "5" in "gecikmesi", anakronun bu işi yapmadan önce 5 dakika bekleyeceği anlamına gelir. Buradaki fikir, anakronun önyükleme anında hemen eşyaları kovmasını önlemektir.