Cron on Linuxi operatsioonisüsteemi ülesannete ajastamiseks mõeldud utiliit. See võimaldab teil käivitada skripte või käske automaatselt teatud aegadel, ajavahemike või sündmuste ajal.
Croni kasutamiseks tuleb luua crontab-fail, mis sisaldab loetelu ülesannetest ja ajavahemikest, millal neid tuleks täita. Iga ülesanne crontabis on string, mis koosneb viiest tühikutega eraldatud väljast:
* * * * * command_to_execute
- - - - -
| | | | |
| | | | +----- day of the week (0 - 6) (Sunday = 0 or 7)
| | | +------- month (1 - 12)
| | +--------- day of the month (1 - 31)
| +----------- hour (0 - 23)
+------------- minutes (0 - 59)
* tähistab suvalist väärtust, näiteks kui väljal minutes on *, siis käivitatakse ülesanne iga minut. Kui soovite määrata mingile väljale kindla väärtuse, näiteks iga päev kell 3 hommikul, tuleb kirjutada 0 3 * * * * * *.
Crontab-faili loomiseks või muutmiseks kasutage käsku crontab -e. Igal kasutajal võib olla oma crontab fail, samuti süsteemifail /etc/crontab, mis sisaldab ülesandeid, mis jooksevad root-kasutajana.
On olemas käsk cronjob, mis võimaldab käivitada ülesandeid Dockeri konteinerite sees. See töötab sarnaselt crontabiga, kuid ülesandeid saab käivitada konteineri sees, mitte host-süsteemis.
Croni kasutamise alustamiseks Linuxis järgige järgmisi samme:
1. Avage terminal ja sisestage käsk crontab -e. See avab praeguse kasutaja crontab-faili.
2. Lisage crontab-faili ülesanne vastavalt eespool kirjeldatud väljalõikele. Näiteks kui soovite skripti every_hour. sh käivitada iga tund, lisage rida 0 * * * * * * * * /path/to/every_hour.sh.
3. Salvestage muudatused ja sulgege fail.
4. Kontrollige, et ülesanne on lisatud crontab-i, kasutades käsku crontab -l. See kuvab nimekirja kõigist crontab'ile lisatud ülesannetest.
5. Kontrollige, et ülesanne töötab plaanipäraselt, kasutades käsku tail -f /var/log/syslog. Näete ülesande täitmisega seotud väljundit.
6. Kui soovite ülesande crontabist eemaldada, kasutage käsku crontab -r.
Tuleb silmas pidada mõningaid olulisi punkte:
crontab'ile saab lisada nii skripte kui ka käske. Kui aga soovite skripti käivitada, veenduge, et sellel on käskirja execute õigused(chmod +x /path/to/script.sh).sudo crontab -e, et avada crontab-faili root-kasutajale.Pange tähele, et crontabis määratud kellaaeg vastab Croni käivitava serveri kellaajale. Kui kasutate kaugserverit, veenduge, et serveris olev aeg on õigesti konfigureeritud.