Obično se Cron poslovi izvode prema lokalnom vremenu definiranom u sustavu. Međutim, možda ćete radije pokrenuti Cron posao u drugoj vremenskoj zoni bez nužnog mijenjanja vremena i datuma vašeg poslužitelja.
Možete provjeriti svoje lokalno vrijeme pomoću naredbe timedatectl kako slijedi:
$ timedatectl
Naredbu date možete koristiti i na sljedeći način:
$ datum
Dakle, kako možete postaviti drugu vremensku zonu za svoje Crontabs? Hajde da vidimo.
Kako postaviti vremensku zonu za Crontabs
U vašem lokalnom Linux sustavu vremenske zone su obično navedene u / usr / share / zoneinfo imenik. Direktorij sadrži popis kontinenata i zemalja i njihove vremenske zone, kao što je prikazano u nastavku.
$ ls / usr / share / zoneinfo /
Trenutnu vremensku zonu možete jednostavno prilagoditi drugoj koristeći prikazanu sintaksu. Na primjer, da biste postavili sustav na vrijeme u Tokiju u Japanu, jednostavno izvršite:
$ sudo ln -sf / usr / share / zoneinfo / Asia / Tokyo / etc / localtimeMeđutim, ne možete promijeniti vrijeme vašeg sustava, posebno kada više korisnika raspoređuje različite Cron poslove. To bi utjecalo na vrijeme pokretanja njihovih poslova za Cron.
Srećom, možete konfigurirati određenu vremensku zonu za svoj Cron posao kako slijedi:
Prvo, morate izvesti TZ varijablu u skriptu Shell prije bilo kojeg drugog unosa Shell. Zatim pristupite svom crontabu i koristite varijablu okruženja crontab CRON_TZ na početku datoteke crontab.
Pretpostavimo da želim postaviti posao Cron za pokretanje sigurnosne kopije skripte u 14:20 svaki dan u Europa / London vrijeme a ne moje lokalno vrijeme. Moje lokalno vrijeme je 2 sata ispred londonskog, tako da će u 14:20 u Londonu moje lokalno vrijeme biti 16:20 ili 1420 HRS.
Prvo prijeđite na datoteku skripte Shell i izvezite TZ varijablu prije bilo kojeg drugog unosa skripte. Pogledajte što sam učinio u mojoj Shell skripti.
IZVOZ TZ = Europa / London
Spremite promjene i zatvorite skriptu.
Zatim pristupite svojoj datoteci crontab pokretanjem naredbe:
$ crontab -eSvakako definirajte varijablu crontab CRON_TZ prije svih ostalih Cronovih unosa kako slijedi.
CRON_TZ = Europa / London20 14 * * * / home / james / backup.sh
Spremite i izađite iz crontaba. Da biste bili sigurni u postavke, možete navesti crontab pomoću naredbe:
$ crontab -lDakle, kada je sat otkucao 14:20 po londonskom vremenu, što odgovara 16:40 po lokalnom vremenu ili 1620 HRS, sigurnosna kopija bila je uspješna.
Zaključak
Ovaj je vodič savršena demonstracija da zapravo možete postaviti određenu vremensku zonu za svoje Crontabs bez promjene vremena vašeg sustava. Na taj način možete konfigurirati različite zadatke za pokretanje u različitim vremenskim zonama prema vašim potrebama, na primjer, ako želite slati e-poštu pretplatnicima određene vremenske zone u njihovo vrijeme, a ne u vaše lokalno vrijeme.