¿Cómo puedo hacer que los trabajos cron se ejecuten en GMT, no en la hora local?
Este es mi archivo crontab:
#m h d m wday command
TZ=GMT
5 0,6,12,18 * * * ~/Documents/bash/transfer.sh
mis trabajos parecen estar ejecutándose a la hora local (GMT + 11) Estoy ejecutando os x snow leopard, pero moveré el código a linux cuando se complete el desarrollo.
El entorno de Linux puede ser un entorno compartido donde puedo tener menos control sobre la configuración.

Respuestas:
No todas las versiones de
cronsoporte ejecutan trabajos utilizando una zona horaria distinta de la del sistema.Si el suyo lo hace, es probable que la especificación sea
TZ=GMToTZ=UTC(sin los corchetes angulares). En algunos casos, la variable seríaCRON_TZ.Lo mejor que puede hacer es verificar la documentación específica del sistema en particular. Ver
man 5 crontab.fuente
Si su hora local es
Europe/London. Entonces:Otro ejemplo:
Si su horario regular es
+0500turno deUTC, y su horario estacional es+0600turno deUTC. Luego agregue+5a todas las horas especificadas en el ejemplo anterior. Esto significa que se ejecuta en08:15amy09:15amde su hora local, respectivamente. Entonces sus líneas cron modificadas se verían así:[EDITAR] Asegúrese de
\escapar de cualquier porcentaje de%caracteres en su archivo crontab. Como crontab los interpreta como un separador de nueva línea. por ejemplo%->\%.fuente
Tal vez podría envolver el binario crond original.
fuente