Crontab u Linuxu: PRIMJERI rasporeda poslova
ล to je crontab?
Cron je dobio ime po grฤkoj rijeฤi "Chronos" koja se koristi za vrijeme. To je sistemski proces koji ฤe automatski izvrลกavati zadatke prema odreฤenom rasporedu. To je skup naredbi koje se koriste za izvrลกavanje redovnih zadataka rasporeฤivanja. Crontab je kratica za "cron table". Omoguฤuje koriลกtenje planera poslova, koji je poznat kao cron za izvrลกavanje zadataka.
Crontab je takoฤer ime programa, koji se koristi za ureฤivanje tog rasporeda. Pokreฤe ga crontab datoteka, konfiguracijska datoteka koja ukazuje na naredbe ljuske koje se povremeno izvode za odreฤeni raspored.
Zaลกto koristiti Cronjobs?
Evo razloga za koriลกtenje Cronjobsa u Linuxu:
- Pomaลพe OS-u da napravi planiranu sigurnosnu kopiju log datoteka ili baze podataka.
- Izbriลกite stare zapisniฤke datoteke
- Archive i oฤistiti tablice baze podataka
- Poลกaljite bilo koju obavijest e-poลกtom kao ลกto su bilteni, e-poลกta o isteku lozinke
- Redovito ฤiลกฤenje predmemoriranih podataka
- Crontab je idealna opcija za automatizaciju Unix poslova.
- Koristi se za automatizaciju odrลพavanja sustava
Kako koristiti cron u Linuxu?
Linux sustav pack ima koristan planer zadataka pod nazivom crontab. Crontab je popularan jer se moลพe zakazati za pokretanje automatiziranog procesa kao root. Stoga pokretanje automatiziranog procesa kao root olakลกava promjene sustava. Samo trebate promijeniti zadatak i zatim priฤekati dok se zadatak ponovno ne pokrene.
Linux Crontab format
Crontab za Linux ima ลกest polja. Prvih pet polja definira vrijeme i datum izvrลกenja, a 6. polje sluลพi za izvrลกenje naredbe.
Crontab sintaksa:
[Minute] [hour] [Day_of_the_Month] [Month_of_the_Year] [Day_of_the_Week] [command]
- Astrici (*): Koristite za slaganje
- Definirajte raspon: Omoguฤuje definiranje raspona uz pomoฤ crtice poput 1-10 ili 30-40 ili jan-mar, pon-srijeda.
- Definirajte viลกe raspona: Omoguฤuje definiranje razliฤitih raspona s naredbama odvojenim poput travanj-lipanj,listopad-prosinac.
Kako dodati/modificirati Crontab
Korisnik moลพe ureฤivati โโsvoje crontab poslove uz pomoฤ sljedeฤe naredbe crontab:
$ crontab -u -e
Gornja naredba otvorit ฤe osobnu crontab konfiguraciju vaลกeg raฤunalnog sustava, koju moลพete ureฤivati โโpomoฤu zadanog ureฤivaฤa teksta.
Nema potrebe za ponovnim pokretanjem vaลกeg crontaba jer ฤe automatski preuzeti vaลกe promjene kada koristite sljedeฤu naredbu.
$ crontab -l
Da biste uklonili svoje crontab zadatke, koristite sljedeฤu naredbu.
$ crontab -r
Da biste dodali ili aลพurirali posao u crontabu, upotrijebite donju naredbu.
crontab -e
Naredba za ureฤivanje crontab-a drugog korisnika
crontab -u username -e
Kako navesti Crontab
Naredba za prikaz crontab unosa trenutnog korisnika
crontab -l
Naredba za pregled crontab unosa odreฤenog korisnika:
crontab -u username -l
Vaลพni Crontab primjeri
Evo nekoliko vaลพnih primjera Crontaba
| Description | naredba |
|---|---|
| Naredba Cron za obavljanje raznih poslova rasporeฤivanja. Dolje danu naredbu izvrลกavajte u 7 ujutro i 5 sati dnevno. |
0 7,17 * * * /scripts/script.sh |
| Naredba za izvrลกavanje cron-a nakon svakih 5 minuta. |
*/5* * * * * /scripts/script.sh |
| Cron planer naredba pomaลพe vam da izvrลกite zadatak na svakom Monday u 5 ujutro. Ova je naredba korisna za obavljanje tjednih zadataka poput ฤiลกฤenja sustava. |
0 5 * * mon /scripts/script.sh |
| Naredba pokreni vaลกu skriptu u intervalu od 3 minute. |
*/3 * * * * /scripts/monitor.sh |
| Naredba za planiranje crona koji se izvrลกava za odreฤeni mjesec. Ova naredba za pokretanje zadataka izvodi se u veljaฤi, lipnju i rujnu. Ponekad moramo zakazati zadatak kako bismo izvrลกili odabrani mjeseฤni zadatak. |
* * * feb,jun,sep * /script/script.sh |
| Naredba koju treba izvrลกiti odabranim danima. Ovaj ฤe primjer pokrenuti svaki Monday i srijeda u 5 sati. |
0 17 * * mon,wed /script/script.sh |
| Ova naredba omoguฤuje izvrลกavanje crona prve subote u mjesecu. |
0 2 * * sat [ $(date +%d) -le 06 ] && /script/script.sh |
| Naredba za pokretanje skripte u intervalu od 6 sati kako bi se mogla konfigurirati kao ispod. |
0 */6 * * * /scripts/script.sh |
| Ova naredba rasporeฤuje zadatak koji ฤe se izvrลกiti dva puta Monday i utorak. Za to koristite sljedeฤe postavke. |
0 4,17 * * mon,tue /scripts/script.sh |
| Naredba planira izvrลกavanje crona nakon svakih 15 sekundi. |
* * * * * /scripts/script.sh * * * * * sleep 15; /scripts/script.sh |
| Naredba za raspored zadataka na godiลกnjoj bazi. @godiลกnja vremenska oznaka je= na โ0 0 5 1 *โ. Ovo izvrลกava zadatak u petoj minuti svake godine. Moลพete ga koristiti za slanje novogodiลกnjih ฤestitki. |
@yearly /scripts/script.sh |
| Zadaci zapovijedanja za izvrลกavanje na mjeseฤnoj bazi. @mjeseฤna vremenska oznaka sliฤna je "0 0 1 * *". Ovaj naredbeni izraz omoguฤuje izvrลกenje zadatka u prvoj minuti mjeseca. |
@monthly /scripts/script.sh |
| Naredba za izvrลกavanje viลกe zadataka koristeฤi jedan cron. |
* * * * * /scripts/script.sh; /scripts/scrit2.sh |
| Naredba za planiranje zadataka za izvrลกavanje na tjednoj bazi. Vremenska oznaka @weekly sliฤna je "0 0 4 * sunce". Ovo se koristi za obavljanje tjednih zadataka kao ลกto je ฤiลกฤenje sustava itd. |
@weekly /bin/script.sh |
| Zadatak ฤe se rasporediti za izvrลกavanje na dnevnoj bazi. @dnevna vremenska oznaka sliฤna je "0 2 * * *". Izvrลกava zadatak u drugoj minuti svakog dana. |
@daily /scripts/script.sh |
| Omoguฤuje izvrลกavanje zadataka svaki sat. @hourly vremenska oznaka sliฤna je "0 * * * *". Ova naredba izvrลกava zadatak u prvoj minuti svakog sata. |
@hourly /scripts/script.sh |
| Omoguฤuje izvrลกavanje zadataka pri ponovnom pokretanju sustava. @reboot izraz je koristan za one zadatke koje sustav ลพeli pokrenuti pri pokretanju vaลกeg sustava. Ovo je korisno za automatsko pokretanje pozadinskih zadataka. |
@reboot /scripts/script.sh |
Saลพetak:
- Cron je dobio ime po grฤkoj rijeฤi "Chronos" koja se koristi za vrijeme.
- Cronjobs pomaลพe OS-u da napravi planiranu sigurnosnu kopiju log datoteka ili baze podataka.
- Linux sistemski paket ima koristan planer zadataka pod nazivom crontab koji se moลพe zakazati za pokretanje automatiziranog procesa kao root.
- Crontab za Linux ima ลกest polja. Prvih pet polja definira vrijeme i datum izvrลกenja, a 6. polje sluลพi za izvrลกenje naredbe.

