Programma di Crontab in diversi fusi orari


18

Vorrei pianificare le mie attività in EST ma voglio che l'attività effettiva venga eseguita nel fuso orario di sistema predefinito.

Qual è il modo migliore per farlo?

Risposte:


25

Basta impostare nella variabile del file crontab TZ = Some / Where È possibile impostare TZ più volte per disporre di lavori separati in diversi fusi orari. Per esempio:

TZ=UTC
* 7 * * * root date | mail root
TZ=CEST
* 7 * * * root date | mail root
TZ=PCT
* 7 * * * root date | mail root

alle 7:00 UTC (o fuso orario in cui hai eseguito il demone cron) verranno eseguiti tre lavori, ma ognuno ha la propria variabile TZ.


+1 non lo sapeva - abbastanza utile.
Coop il

+1 un suggerimento molto bello!
Janne Pikkarainen,

Voglio che corrano tutti nello stesso fuso orario ma in momenti diversi!
DD.

Ehm, il demone cron che è a sua volta a conoscenza della variabile TZ è già lì: blogs.oracle.com/chrisg/entry/…
datacompboy

2
Non vedo nulla nella domanda che indica che l'ambiente era OpenSolaris ... Vixie cron afferma specificamente che questo non funziona.
womble

14

Nella versione CENTOS di cron basta aggiungere la riga: CRON_TZ = America / New_York

Ciò eseguirà la pianificazione in base all'ora di New York, ma l'attività verrà eseguita nel fuso orario predefinito.


Grazie per il suggerimento sul fuso orario predefinito. È necessario aggiungere una variabile TZ in ciascuna riga del crontab, se si desidera che anche il cron job venga eseguito nel fuso orario orientale, ad esempio:export TZ=America/New_York; unix_command; next_cmd_in_sequence
Mike S,

1
Voglio solo menzionare che puoi avere più impostazioni CRON_TZ in un unico crontab - molto utile. :)
Lester Cheung

0

È possibile eseguire un'istanza separata di cron con una TZvariabile di ambiente diversa o semplicemente imparare ad aggiungere o sottrarre alcune ore.


2
Sì ... non è poi così semplice con le modifiche dell'ora legale che si verificano in momenti diversi in fusi orari diversi. Pensavo che la variabile d'ambiente TZ avrebbe significato che il processo viene eseguito in una TZ diversa?
DD.

Sì, e il processo che ha la diversa TZ è crond.
womble

come posso ottenere il servizio crond per funzionare in una TZ diversa? Mi dispiace, sono un principiante unix.
DD.
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.