crontab

Hogyan állíthatom be a Crontabs időzónáját?

Hogyan állíthatom be a Crontabs időzónáját?
Crontab, a rövidített formája Cron asztal, egyszerre parancs és szövegfájl UNIX / Linux rendszerekben, amelyek a Cron-jobok ütemezésének meghatározására szolgálnak. Mi az a Cron munka? A Cron job, más néven egyszerűen Cron, egy időalapú ütemező, amely meghatározott időpontokban hajt végre feladatokat Linux rendszerekben. A crond démon segítségével fut. A Cron feladatok rendkívül hasznosak a Shell parancsfájlok és más, rendszeres időközönként végrehajtandó parancsok automatizálásában, amelyek manuálisan különben unalmasak lennének.

A Cron-feladatok általában a rendszerben meghatározott helyi idő szerint futnak. Előfordulhat azonban, hogy a Cron feladatot egy másik időzónában futtatja, anélkül, hogy szükségszerűen megváltoztatná a szerver idejét és dátumát.

A helyi időt ellenőrizheti a timedatectl paranccsal az alábbiak szerint:

$ timedatectl

A date parancsot az alábbiak szerint is használhatja:

$ date

Tehát hogyan állíthat be egy másik időzónát a Crontabs-hez? Találjuk ki.

A Crontabs időzónájának beállítása

A helyi Linux rendszerben az időzónákat általában a / usr / share / zoneinfo Könyvtár. A könyvtár tartalmazza a kontinensek és országok, valamint azok időzónáinak listáját, az alábbiak szerint.

$ ls / usr / share / zoneinfo /

Könnyedén beállíthatja az aktuális időzónát egy másikra a bemutatott szintaxissal. Például, ha a rendszert Japánban, Tokióban szeretné beállítani, egyszerűen hajtsa végre:

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

A rendszer idejét azonban nem lehet megváltoztatni, különösen akkor, ha több felhasználó ütemezi a különböző Cron-feladatokat. Ez befolyásolná a Cron-munkájuk idejét.

Szerencsére az alábbiak szerint konfigurálhat egy adott időzónát a Cron-munkájához:

Először a Shell szkriptben lévő TZ változót kell exportálnia a többi Shell bejegyzés előtt. Ezután nyissa meg a crontab-ot, és használja a crontab CRON környezeti változót_TZ a crontab fájl elején.

Tegyük fel, hogy be akarom állítani a Cron feladatot, hogy minden nap 14: 20-kor futtasson biztonsági másolatot Európa / London és nem a helyi időm. A helyi időm 2 órával megelőzi a londoni időt, így Londonban 14:20 órakor a helyi időm 16:20 vagy 1420 HRS lesz.

Először lépjen a Shell szkriptfájlba, és exportálja a TZ változót minden más szkriptbejegyzés előtt. Nézze meg, mit csináltam a Shell szkriptemben.

EXPORT TZ = Európa / London

Mentse el a módosításokat, és lépjen ki a parancsfájlból.

Ezután a parancs futtatásával nyissa meg a crontab fájlt:

$ crontab -e

Ügyeljen arra, hogy meghatározza a crontab változót CRON_TZ az összes többi Cron bejegyzés előtt az alábbiak szerint.

CRON_TZ = Európa / London
20 14 * * * / home / james / backup.SH

Mentse el és lépjen ki a crontab-ból. A beállítások meggyőződéséhez felsorolhatja a crontab parancsot a következő paranccsal:

$ crontab -l

Tehát, amikor az óra londoni idő szerint 14: 20-kor ketyegett, ami helyi idő szerint 16:40 vagy 1620 HRS-nek felel meg, a biztonsági mentés sikeres volt.

Következtetés

Ez az útmutató tökéletesen bemutatja, hogy valóban beállíthat egy meghatározott időzónát a Crontabs-hez anélkül, hogy megváltoztatná a rendszer idejét. Így konfigurálhat különböző feladatokat úgy, hogy különböző időzónákban fussanak az Ön igényeinek megfelelően, például ha e-maileket szeretne küldeni egy bizonyos időzónájú előfizetőknek az adott időben, és nem a helyi idő szerint.

OpenTTD vs Simutrans
Saját közlekedési szimuláció létrehozása szórakoztató, pihentető és rendkívül csábító lehet. Ezért meg kell győződnie arról, hogy a lehető legtöbb ját...
OpenTTD bemutató
Az OpenTTD az egyik legnépszerűbb üzleti szimulációs játék. Ebben a játékban létre kell hoznia egy csodálatos szállítási vállalkozást. Azonban kezdete...
SuperTuxKart Linuxhoz
A SuperTuxKart egy nagyszerű cím, amelynek célja, hogy ingyenesen hozza el a Mario Kart élményét Linux rendszerén. Elég kihívást jelentő és szórakozta...