Sorun örneği:
* 9 * * * echo 9
* 10 * * * echo 10
Yukarıdaki bilgiler kullanıcıya her dakika bir e-posta gönderir, ancak tüm "9" yanıtları 10:00 -> 10:59 AM arasında gerçekleşirken, "10" ler 11:00 -> 11:59 AM arasında gerçekleşir. .
İşini yürütmek
* * * * * /bin/date ; /bin/date -u
Beklenen (doğru) tarih ve saati döndürdü. bu hem UTC hem de yerel saat için geçerliydi (America / Denver). Bu işi, belirli bir saatte her dakika çalışacak şekilde değiştirin, ofsetle sonuçlanır (işler 9'da 10'da çalıştırılması söylenir, vb.).
Tamamladığım geçerli hata ayıklama:
Tamam, bu çok garip. Belki saat dilim dosyam bir şekilde dağılmış olabilir? Kontrol edelim
diff -s /etc/localtime /usr/share/zoneinfo/`cat /etc/timezone`
Files /etc/localtime and /usr/share/zoneinfo/America/Denver are identical
Donanım saatini kontrol ettim, bunun kapalı olup olmadığını veya bir şekilde yerel ayarlarıma (kök olarak çalıştır) katılmadığını kontrol ettim.
date ; hwclock
Wed Oct 26 10:50:13 MDT 2016
Wed 26 Oct 2016 10:50:14 AM MDT -0.204171 seconds
Sanýrým bir saniyeliđine çalýţýyor, ama bu cron iţlerimin tam bir saatlik bir iţe yarýţmasýný yapmamalý deđil mi?
Ayrıca aşağıdakilerden de eminim:
- Saat dilimim yakın zamanda değişti mi? Hayır
- Zaten saat dilimini manuel olarak düzeltmeyi denediniz mi? Evet
- Saat dilimini düzelttikten sonra cron'u sıfırladınız mı? Evet
- Cron hizmetinin yeniden başlatıldığından emin oldum mu? Evet
- Cron hizmetini yeniden başlattım mı? Evet
- Cron'un yeniden başlatıldığından gerçekten emin misiniz? % 100 emin Cron yeniden başlatıldı
Potansiyel olarak alakalı diğer bilgiler:
Debian çalışıyor.
cat /etc/debian_version
8.6
Mevcut Çekirdek
uname -a
Linux BigBox 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt25-2 (2016-04-08) x86_64 GNU/Linux
Güncellenmiş Hata Ayıklama:
'Hwclock --systohc' koştu, davranışta gözle görülür değişiklikler değil. Kontrol etmek için bu komutu çalıştır
date;hwclock
Wed Oct 26 12:39:09 MDT 2016
Wed 26 Oct 2016 12:39:11 PM MDT -0.875328 seconds
Bu dosya mevcut olmadığından 'cat / etc / sysconfig / clock' komutunu çalıştıramıyorum. 'Saat' bulmak için / etc / tree altında bir find komutu çalıştırmak, bu adla o dosyaya sahip olmadığımı doğrular.
Farkında olduğum bir şeyin CRON_TZ değişkenini ayarlayıp ayarlamadığını kontrol ettim. Kullanıcı düzeyinde veya kök düzeyinde ayarlanmaz. Onları cron yankı var çıktı vermez.
hwclock --systohc
sadece tamlık için deneyin ve cat /etc/sysconfig/clock
soru ekleyin ?
CRON_TZ
env var her yerde hazır mı?