Jadwal crontab di zona waktu yang berbeda

18

Saya ingin menjadwalkan tugas-tugas saya di EST tetapi saya ingin tugas yang sebenarnya berjalan di bawah zona waktu sistem default.

Apa cara terbaik untuk melakukan ini?

DD.
sumber

Jawaban:

25

Cukup atur di file crontab Anda, variabel TZ = Some / Where Anda dapat mengatur TZ beberapa kali untuk memiliki pekerjaan yang terpisah di zona waktu yang terpisah. Sebagai contoh:

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

pukul 7:00 UTC (atau zona waktu Anda memiliki cron daemon runned) tiga pekerjaan akan dijalankan, tetapi masing-masing memiliki variabel TZ sendiri.

datacompboy
sumber
+1 tidak tahu itu - sangat berguna.
Coops
Beri 1 tip yang sangat bagus!
Janne Pikkarainen
Saya ingin semuanya berjalan di zona waktu yang sama tetapi di waktu yang berbeda!
DD.
Agh, cron daemon yang menyadari variabel TZ sudah ada di sana: blogs.oracle.com/chrisg/entry/…
datacompboy
2
Saya tidak melihat apa pun dalam pertanyaan yang mengindikasikan bahwa lingkungannya adalah OpenSolaris ... Vixie cron secara khusus mengatakan bahwa ini tidak berfungsi.
womble
14

Pada versi CENTOS dari cron cukup tambahkan baris: CRON_TZ = America / New_York

Ini akan menjalankan jadwal sesuai dengan waktu New York tetapi tugas akan berjalan di zona waktu default.

DD.
sumber
Terima kasih atas tipnya tentang zona waktu default. Ini mengharuskan Anda menambahkan variabel TZ di setiap baris crontab, jika Anda ingin pekerjaan cron juga berjalan di zona waktu Timur, misalnya:export TZ=America/New_York; unix_command; next_cmd_in_sequence
Mike S
1
Hanya ingin menyebutkan bahwa Anda dapat memiliki beberapa pengaturan CRON_TZ dalam satu crontab - sangat berguna. :)
Lester Cheung
0

Anda dapat menjalankan instance cron yang terpisah dengan TZvariabel lingkungan yang berbeda , atau hanya belajar menambah atau mengurangi beberapa jam.

womble
sumber
2
Ya ... tidak sesederhana itu dengan perubahan daylight saving yang terjadi pada waktu yang berbeda di zona waktu yang berbeda. Saya pikir variabel lingkungan TZ berarti proses berjalan di TZ yang berbeda?
DD.
Ya, dan proses yang memiliki TZ berbeda adalah crond.
womble
bagaimana saya bisa menjalankan layanan crond di TZ yang berbeda? Maaf saya pemula unix.
DD.