Exemple de problème:
* 9 * * * echo 9
* 10 * * * echo 10
Ce qui précède enverra un e-mail à l'utilisateur toutes les minutes, mais toutes les réponses "9" auront lieu à 10h00 -> 10h59, tandis que les "10" arriveront à 11h00 -> 11h59. .
Exécuter un travail de
* * * * * /bin/date ; /bin/date -u
Renvoyé la date et l'heure attendues (correctes). cela était vrai à la fois pour l'heure UTC et l'heure locale (America / Denver). Modifier ce travail pour qu'il s'exécute toutes les minutes à une heure spécifique entraîne le décalage (les travaux doivent s'exécuter à 9, à 10, etc.).
Débogage actuel que j'ai terminé:
D'accord, c'est étrange. Peut-être que mon fichier de fuseau horaire est en quelque sorte foiré? Permet de vérifier que
diff -s /etc/localtime /usr/share/zoneinfo/`cat /etc/timezone`
Files /etc/localtime and /usr/share/zoneinfo/America/Denver are identical
J'ai vérifié l'horloge matérielle pour voir si elle est désactivée ou en désaccord avec mes paramètres locaux (exécuté en tant que root).
date ; hwclock
Wed Oct 26 10:50:13 MDT 2016
Wed 26 Oct 2016 10:50:14 AM MDT -0.204171 seconds
Semble être éteint d'une seconde, mais cela ne devrait pas faire en sorte que mes tâches cron soient interrompues pendant une heure, non?
Je suis également sûr de ce qui suit:
- Mon fuseau horaire a-t-il changé récemment? Non
- Avez-vous quand même essayé de corriger manuellement le fuseau horaire? Oui
- Avez-vous réinitialisé cron après avoir fixé le fuseau horaire? Oui
- Ai-je vérifié que le service cron a été redémarré? Oui
- Ai-je redémarré le service cron? Oui
- Êtes-vous vraiment sûr que cron a été redémarré? 100% sûr que Cron a été redémarré
Autres informations potentiellement pertinentes:
Exécuter Debian.
cat /etc/debian_version
8.6
Noyau actuel
uname -a
Linux BigBox 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt25-2 (2016-04-08) x86_64 GNU/Linux
Debug mis à jour:
Ran 'hwclock --systohc', changements notables de comportement. Exécutez cette commande pour vérifier
date;hwclock
Wed Oct 26 12:39:09 MDT 2016
Wed 26 Oct 2016 12:39:11 PM MDT -0.875328 seconds
Je ne peux pas exécuter 'cat / etc / sysconfig / clock' car ce fichier n'existe pas. L'exécution d'une commande find sous l'arborescence / etc / pour trouver 'horloge' confirme que je n'ai aucun fichier de ce nom là.
Vérifié pour voir si quelque chose que je connais a défini la variable CRON_TZ. Il n'est pas défini au niveau utilisateur, ni au niveau racine. Les avoir en écho cron ne donne aucune sortie.
hwclock --systohc
juste pour être complet et ajoutez cat /etc/sysconfig/clock
à la question?
CRON_TZ
env var est-il réglé n'importe où?