Cron Jobs létrehozása és kezelése Linuxon
A Cron a Linux egyik leghasznosabb eszköze és a fejlesztők kedvence, mert lehetővé teszi automatizált parancsok futtatását meghatározott időszakokban, dátumokon és időközönként általános célú és feladatspecifikus szkriptek használatával. A leírás alapján elképzelhető, hogy a rendszergazdák hogyan használják a biztonsági mentési feladatok, a címtártisztítás, az értesítések stb. automatizálására.
A Cron feladatok a háttérben futnak, és folyamatosan ellenőrzik az /etc/crontab
fájlt, valamint az /etc/cron.*/
és a /var/spool/cron/ fájlokat.
könyvtárakat. A cron fájlokat nem szabad közvetlenül szerkeszteni, és minden felhasználónak egyedi crontabja van.
Akkor hogyan kell cron-feladatokat létrehozni és szerkeszteni? crontab parancsokkal. A crontab a cron feladatok létrehozására, szerkesztésére, telepítésére, eltávolítására és listázására használt módszer.
A cron feladatok létrehozásának és szerkesztésének parancsa ugyanaz és egyszerű. És ami még menőbb, hogy nem kell újraindítania a cront új fájlok létrehozása vagy a meglévők szerkesztése után.
crontab -e
Cron szintaxis
Csakúgy, mint bármely nyelv esetében, a cron használata sokkal könnyebb, ha megérti a szintaxisát, és két formátumot kell ismernie:
A B C D E USERNAME /path/to/command arg1 arg2
OR
A B C D E USERNAME /root/backup.sh
A fenti cron szintaxis magyarázata:
- A: Percek tartomány: 0–59
- B: Óra tartomány: 0–23
- C: Napok tartomány: 0–31
- D: Hónapok tartomány: 0–12
- E: A hét napjai tartomány: 0–7. Hétfőtől kezdve a 0 vagy a 7 a vasárnapot jelenti
- USERNAME: cserélje ki ezt a felhasználónevére
- /path/to/command – Az ütemezni kívánt szkript vagy parancs neve
Ez nem minden. A Cron 3 operátor szimbólumot használ, amelyek lehetővé teszik több érték megadását egy mezőben:
- Csillag
(*)
: meghatározza egy mező összes lehetséges értékét - A
(,)
vessző: az értékek listáját adja meg - Szójel
(-)
: értékek tartományát adja meg - Elválasztó
(/)
: lépésértéket ad meg
Most, hogy ismeri a Cron szintaxisát és operátorait, lássunk néhány cron példát.
Példák a Cron munkára
A cron parancsok futtatásának első lépése a crontab telepítése a következő paranccsal:
crontab -e
Futtassa a /root/backup.sh
fájlt minden nap 3 órakor:
0 3 * * * /root/backup.sh
Futtassa a script.sh
fájlt 16:30-kor minden hónap második napján:
30 16 2 * * /path/to/script.sh
Futtassa a /scripts/phpscript.php
programot 22:00-kor a héten:
0 22 * * 1-5 /scripts/phpscript.php
Futtassa a perlscript.pl
fájlt 23 perccel éjfél után, hajnali 2-kor és 4-kor, mindennap:
23 0-23/2 * * * /path/to/perlscript.pl
Futtassa a Linux parancsot minden vasárnap 04:05-kor:
5 4 * * sun /path/to/linuxcommand
Cron opciók
Sorolja fel a cron munkákat.
crontab -l
OR
crontab -u username -l
Törölje az összes crontab-feladatot.
crontab -r
Törölje a Cron-feladatot egy adott felhasználóhoz.
crontab -r -u username
Strings a Crontabban
A karakterláncok a fejlesztők kedvenc dolgai közé tartoznak, mert időt takarítanak meg azáltal, hogy kiküszöbölik az ismétlődő írást. A Cron speciális karakterláncokkal rendelkezik, amelyek segítségével gyorsabban hozhat létre parancsokat:
@hourly
: Óránként egyszer fut, azaz "0 * * * *"@midnight
: Futtatás naponta egyszer, azaz „0 0 * * *”@daily
: ugyanaz, mint éjfél@weekly
: futtassa hetente egyszer, azaz „0 0 * * 0”@monthly
: havonta egyszer fut, azaz „0 0 1 * *”@évente
: Minden évben egyszer fut, azaz „0 0 1 1 *”@évente
: ugyanaz, mint az @évente@reboot
: Minden indításkor futtassa egyszer
Például a következőképpen készíthet biztonsági másolatot a rendszeréről minden nap:
@daily /path/to/backup/script.sh
Ezen a ponton mindennel rendelkezik, amire szüksége van a rendszerfeladatok létrehozásához és kezeléséhez a Cron használatával. Mostantól megkezdheti több környezet beállítását és karbantartását ütemezett parancsok használatával.
Mennyire vagy Cron felhasználó? És vannak olyan részletek, amelyekkel hozzájárulhat a cikkhez? A vitadoboz lent található.
Ha eléggé tisztában van a Crontab működésével, használhatja ezeket a remek Crontab generátor segédprogramokat a crontab sorok ingyenes generálására.
Ezenkívül itt olvashatja az Ubuntu cikkét a Cron használatáról. Vannak benne források, amelyeket hasznosnak találhat.