crontab

Kuidas ma saan Crontabsi ajavööndi määrata?

Kuidas ma saan Crontabsi ajavööndi määrata?
Crontab, lühendatud vorm Croni tabel, on nii käsk kui ka tekstifail UNIX / Linuxi süsteemides, mida kasutatakse Croni tööde ajastamise määramiseks. Mis on Croni töö? Croni töö, mida laialdaselt nimetatakse ka lihtsalt Croniks, on ajapõhine ajastaja, mis täidab Linuxi süsteemides ülesandeid määratud kellaaegadel. See töötab crond-deemoni abil. Croni tööd on äärmiselt kasulikud Shelli skriptide ja muude korrapäraste ajavahemike järel käivitatavate käskude automatiseerimisel, mis muidu oleks käsitsi tehes tüütu.

Tavaliselt töötavad Croni töökohad süsteemis määratud kohaliku aja järgi. Võite siiski eelistada Croni töö käivitamist erinevas ajavööndis, muutmata tingimata serveri kellaaega ja kuupäeva.

Kohalikku aega saate kontrollida käsuga timedatectl järgmiselt:

$ timedatectl

Kuupäeva käsku saate kasutada ka järgmiselt:

$ kuupäev

Niisiis, kuidas saate oma Crontabsi jaoks erineva ajavööndi määrata? Uurime välja.

Kuidas määrata Crontabsi ajavöönd

Teie kohalikus Linuxi süsteemis on ajavööndid tavaliselt määratud / usr / share / zoneinfo kataloogi. Kataloog sisaldab loendit mandritest ja riikidest ning nende ajavöönditest, nagu allpool näidatud.

$ ls / usr / share / zoneinfo /

Näidatud süntaksiga saate praegust ajavööndit hõlpsasti teisendada. Näiteks selleks, et seadistada süsteem Jaapanis Tokyos toimuvale ajale, käivitage lihtsalt:

$ sudo ln -sf / usr / share / zoneinfo / Asia / Tokyo / etc / localtime

Kuid te ei saa oma süsteemi aega muuta, eriti kui mitu kasutajat ajastavad erinevaid Croni töid. See mõjutaks nende Croni töökohtade töötamise aega.

Õnneks saate oma Croni töö jaoks konkreetse ajavööndi konfigureerida järgmiselt:

Esiteks peate enne muid Shelli kirjeid oma Shelli skripti eksportima TZ muutuja. Järgmisena pöörduge oma crontabi juurde ja kasutage crontabi keskkonnamuutujat CRON_TZ crontabi faili alguses.

Oletame, et ma tahan seada Croni töö varukripti käitama iga päev kell 14:20 Euroopa / London mitte minu kohaliku aja järgi. Minu kohalik aeg on 2 tundi Londoni ajast ees, seega kell 14.20 Londonis on minu kohalik aeg 16.20 või 1420 HRS.

Kõigepealt minge Shelli skriptifaili ja eksportige muutuja TZ enne muid skripti sisestusi. Vaadake, mida ma oma Shelli skriptis tegin.

EKSPORT TZ = Euroopa / London

Salvestage muudatused ja väljuge skriptist.

Järgmisena avage oma crontabi fail, käivitades käsu:

$ crontab -e

Kindlasti määrake crontab-muutuja CRON_TZ enne kõiki muid Croni kirjeid järgmiselt.

CRON_TZ = Euroopa / London
20 14 * * * / home / james / backup.sh

Salvestage crontab ja väljuge sellest. Seadetes veendumiseks võite crontabi loendi lisada käsuga:

$ crontab -l

Niisiis, kui kell tiksus kell 14:20 Londoni aja järgi, mis vastab kohaliku aja järgi 16:40 või 1620 HRS, oli varundamine edukas.

Järeldus

See juhend on suurepärane näide sellest, et saate Crontabsi jaoks määratud ajavööndi seadistada ilma oma süsteemi aega muutmata. Nii saate konfigureerida erinevaid ülesandeid teie vajadustele vastavaks erinevates ajavööndites käitamiseks, näiteks kui soovite saata kirju teatud ajavööndi tellijatele nende ja mitte teie kohaliku aja järgi.

League of Legendsi installimine Ubuntu 14-le.04
Kui olete League of Legends fänn, siis on see teile võimalus proovida League of Legendsit. Pange tähele, et LOL-i toetab PlayOnLinux, kui olete Linuxi...
Installige uusim OpenRA strateegiamäng Ubuntu Linuxi
OpenRA on tasuta / tasuta reaalajas strateegiamängumootor, mis loob uuesti Westwoodi varased mängud nagu klassikaline Command & Conquer: Red Alert. Ja...
Installige Linuxile uusim Dolphin Emulator for Gamecube & Wii
Dolphini emulaator võimaldab teil mängida valitud Gamecube & Wii mänge Linuxi personaalarvutites (PC). Vabalt saadaval oleva ja avatud lähtekoodiga m...