A Cron lehetőséget ad rendszeresen elvégzendő feladatok ütemezésére. A crontab egy egyszerű felépítésű szöveges fájlt, amely szerkesztésével tudunk pontosan megadott időpontokban parancsokat futtatni.
Létezhet továbbá két konfigurációs fájl, amelyek megszabják hogy a rendszer mely felhasználói adhatnak meg ütemezett feladatokat. Crontab-et használhatsz ha a felhasználóneved megjelenik a /usr/lib/cron/cron.allow fájlban. Ha ez a fájl nem létezik, és a felhasználóneved nem szerepel a /usr/lib/cron/cron.deny fájlban, szintén nyerő vagy. Ha a cron.deny üres, valamint a cron.allow nem létezik, akkor mindenkinek van lehetősége ütemezésre.
Mielőtt bárki frászt kapna, közlöm hogy az Ubuntuban alapból szerkesztheted a crontab-et, így aztán az imént említett két konfigurációs fájlal nem kell foglalkozni.
Három féle kapcsolóval használhatjuk a crontab parancsot.
- crontab -e Ha nem létezik létrehozza a crontab-ot, majd megnyitja szerkesztésre.
- crontab -l Listázza az aktuális bejegyzéseket.
- crontab -r Törli a crontab fájlt.
A crontab fájl hat oszlopra oszlik, amelyek pontosan leírt szabályok alapján töltendőek ki.
Ezek sorrendben a következőek:
- Perc (0-59)
- Óra (0-23)
- A hónap napja (1-31)
- Hónap (1-12)
- A hét napjai (0-6) (0=Vasárnap)
- A végrehajtandó parancs
Nézzünk pár példát!
Ha pl. szeretnénk minden nap 15:20-kor kiüríteni a tmp könyvtárat, akkor a következő sort írjuk be:
20 15 * * * rm /home/felhasználóneved/tmp/*
Ha ugyanezt mondjuk csak a hétfői napokon szeretnénk megtenni:
20 15 * * 1 rm /home/felhasználóneved/tmp/*
Ha minden hónap 10. és 20. napján szeretnénk törölni a fájlokat:
20 15 10,20 * * rm /home/felhasználóneved/tmp/*
Talán még annyit érdemes hozzátenni érdekességként, hogy amennyiben szeretnénk naplózni a cron tevékenységét, egyszerűen irányítsuk át a megadott parancs kimenetét egy fájlba a következő képpen:
20 15 * * * rm /home/felhasználóneved/tmp/* > /home/felhasználóneved/rm_temp.log
Természetesen ezzel a Cron lehetősei közül csak a felszint kapargattuk, viszont szerintem ennyi elég a lényeg megértéséhez.
Ha valakinek nem tetszik az alapértelmezett GNU nano szerkesztő, van lehetőség grafikus programok használatára, de ez már egy következő cikk lehet.