Los trabajos cron se ejecutan con 1 hora de retraso, en total desacuerdo con los tiempos del sistema

Los trabajos cron se ejecutan con 1 hora de retraso, en total desacuerdo con los tiempos del sistema

Ejemplo de problema:

* 9 * * * echo 9
* 10 * * * echo 10

Lo anterior enviará un correo electrónico al usuario cada minuto, pero todas las respuestas del "9" se producirán entre las 10:00 a. m. -> 10:59 a. m., mientras que las "10" llegarán a las 11:00 a. m. -> 11:59 a. m. .

Ejecutando un trabajo de

* * * * * /bin/date ; /bin/date -u

Devolvió la fecha y hora esperadas (correctas). esto fue cierto tanto para la hora UTC como para la hora local (América/Denver). Cambiar este trabajo para que se ejecute cada minuto a una hora específica da como resultado el desplazamiento (los trabajos que se ejecutan a las 9 se ejecutan a las 10, etc., etc.).

Depuración actual que he completado:

Vale, eso es extraño. ¿Quizás mi archivo de zona horaria esté estropeado de algún modo? Comprobemos eso

diff -s /etc/localtime /usr/share/zoneinfo/`cat /etc/timezone`
Files /etc/localtime and /usr/share/zoneinfo/America/Denver are identical

He verificado el reloj del hardware para ver si está apagado o de alguna manera no está de acuerdo con mi configuración local (ejecutar como root).

date ; hwclock
Wed Oct 26 10:50:13 MDT 2016
Wed 26 Oct 2016 10:50:14 AM MDT  -0.204171 seconds

Parece estar fuera de lugar por un segundo, pero eso no debería hacer que mis trabajos cron se ejecuten una hora completa fuera de lo previsto, ¿verdad?

También estoy seguro de lo siguiente:

  • ¿Ha cambiado mi zona horaria recientemente?No
  • ¿Intentaste arreglar manualmente la zona horaria de todos modos?
  • ¿Reinició cron después de arreglar la zona horaria?
  • ¿Me he asegurado de que se haya reiniciado el servicio cron?
  • ¿He reiniciado el servicio cron?
  • ¿Estás realmente seguro de que se reinició cron?100% seguro de que Cron se ha reiniciado

Otra información potencialmente relevante:

Ejecutando Debian.

cat /etc/debian_version
8.6

Núcleo actual

uname -a
Linux BigBox 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt25-2 (2016-04-08) x86_64 GNU/Linux

Depuración actualizada:

Ejecutó 'hwclock --systohc', sin cambios notables en el comportamiento. Ejecuté este comando para verificar

date;hwclock
Wed Oct 26 12:39:09 MDT 2016
Wed 26 Oct 2016 12:39:11 PM MDT  -0.875328 seconds

No puedo ejecutar 'cat /etc/sysconfig/clock' porque este archivo no existe. Ejecutar un comando de búsqueda bajo el árbol /etc/ para buscar 'reloj' confirma que no tengo ningún archivo con ese nombre allí.

Verifiqué si algo que yo sepa ha configurado la variable CRON_TZ. No está configurado a nivel de usuario ni a nivel de raíz. Hacer que cron los haga eco no da resultados.

Respuesta1

Un lugar más para buscar: los scripts de inicio al arrancar crono el archivo crontab del sistema antiguo /etc/crontab. Es posible que la variable de entorno TZ esté configurada, por ejemplo, /etc/init.d/cronieo /lib/systemd/system/crond.service, no estoy seguro de qué usa Debian para el sistema de inicio.

He visto algo como esto cuando intenté ejecutar crondlas cosas cada dos horas:

0 */2 * * * /opt/dbms/rainstor/archiving/ama_term

crondejecutó el guión en horas impares. Sospeché, pero nunca me lo probé, que tenía que ver con una confusión sobre el horario de verano.

información relacionada