A cron job egy olyan ütemezett feladat, amelyet a Linux rendszer automatikusan, meghatározott időközönként futtat le – például egy biztonsági mentés elkészítéséhez vagy egy karbantartó szkript lefuttatásához.
A crontab szerkesztése
A saját felhasználónkhoz tartozó ütemezett feladatok listáját a következő paranccsal szerkeszthetjük:
crontab -e
A már beállított feladatok megtekintéséhez:
crontab -l
A crontab szintaxisa
Minden sor öt időmezőből és a futtatandó parancsból áll:
* * * * * parancs
│ │ │ │ │
│ │ │ │ └── hét napja (0-6, ahol a 0 a vasárnap)
│ │ │ └──── hónap (1-12)
│ │ └────── hónap napja (1-31)
│ └──────── óra (0-23)
└────────── perc (0-59)
A csillag (*) azt jelenti, hogy az adott mező minden értékére fusson a feladat.
Gyakorlati példák
0 3 * * *– minden nap hajnali 3 órakor*/15 * * * *– 15 percenként0 0 1 * *– minden hónap első napján, éjfélkor0 9 * * 1– minden hétfőn 9 órakor
Egy teljes bejegyzés például így néz ki:
0 3 * * * /usr/bin/php /home/felhasznalo/mentes.php
Ez minden nap hajnali 3-kor lefuttatja a megadott PHP szkriptet.
Hasznos tippek
- A parancsokban mindig a teljes elérési utat adjuk meg, mivel a cron környezet nem feltétlenül ismeri ugyanazokat a beállításokat, mint egy interaktív terminál.
- A feladat kimenetét érdemes fájlba irányítani (
>> /home/felhasznalo/log.txt 2>&1), hogy hiba esetén visszakereshető legyen, mi történt. - WordPress oldalak esetén érdemes a beépített WP-Cron helyett valódi rendszerszintű cron jobot használni – erről bővebben a Hogyan cseréljük le a WordPress beépített cron-ját a cPanel ütemezett feladataival? cikkünkben olvashat.