Makseviisid Abuse

Cron Linuxis: mis see on?

26.02.2023, 13:13

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.

Kuidas seda kasutada?

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 kasutamine: samm-sammult algoritm

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).
  • kui soovite, et ülesanne käivitataks root-kasutajate õigustega, kasutage käsku sudo crontab -e, et avada crontab-faili root-kasutajale.
  • veenduge, et käivitatavad käsud ja skriptid on õiges kohas ja neil on õiged lugemis- ja täitmisõigused.

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.