krontab

Kako zakazati zadatak u Linuxu?

Kako zakazati zadatak u Linuxu?
Kad god koristite operativni sustav zasnovan na UNIX-u, određene zadatke treba izvoditi više puta. Ručno ih pokretanje svaki put oduzima puno vremena i sveukupno je neučinkovito. Da bi riješio ovaj problem, UNIX dolazi s ugrađenim planerom zadataka. Ovi planeri zadataka ponašaju se poput pametne budilice. Kad se alarm oglasi, operativni sustav će pokrenuti unaprijed zadani zadatak.

U slučaju Linuxa, dolazi s dva osnovna, ali moćna alata: Cron daemon (zadani planer zadataka) i na (prikladniji za jednokratno raspoređivanje zadataka).

U ovom vodiču provjerite kako zakazati zadatak u Linuxu.

Zakažite zadatke u Linuxu

Cron
Cron daemon odgovoran je za pokretanje puno poslova u određeno vrijeme. Ti se zadaci obično izvode u pozadini u zakazano vrijeme. Nudi veliku fleksibilnost bez obzira na zadatak, bez obzira na interval (sat, tjedan, mjesec, godina ili bilo što drugo).

Cron prati svoje radnje pomoću datoteke crontab. Datoteka crontab je skripta koja sadrži sve potrebne informacije za pokretanje svih cron poslova.

Kratko ćemo pogledati neke od osnovnih korištenja crona. U slučaju bilo koje od sljedećih naredbi, bit će konfigurirana za root korisnika ako se izvodi s privilegijom sudo. Za demonstraciju sam odavde uzeo uzorak crontab datoteke.

Da biste popisali sve planirane cron poslove za trenutnog korisnika, pokrenite sljedeću naredbu. Ispisat će sav sadržaj datoteke crontab.

$ crontab -l


Želite cron popis poslova za drugog korisnika? Pokrenite ovu naredbu.

$ sudo crontab -u -l


Da biste uredili skriptu crontab, pokrenite naredbu. Da biste uredili datoteku crontab za root, pokrenite sljedeću naredbu sa sudo privilegijom.

$ crontab -e


Svaki redak u crontab skripti definira zadatak. Evo brze raščlambe unosa crontab.

$

Evo popisa svih mogućih vrijednosti za sva ta polja. Ako se umjesto numeričke vrijednosti koristi zvjezdica (*), koristit će se sve moguće vrijednosti polja.

  • minuta: 0 do 59
  • sati: 0 do 23
  • dan u mjesecu: 1 do 31
  • mjesec: 1 do 12
  • dan u tjednu: 0 (nedjelja) do 6 (subota)

Detaljni vodič o tome kako koristiti crontab za automatizaciju zadataka, pogledajte kako postaviti cron poslove u Linuxu. Evo još jednog brzog primjera cron posla koji se izvodi svake minute.

na
Iako je cron primarni način raspoređivanja zadataka, at nudi mogućnost pokretanja naredbe / skripte u određeno vrijeme ili u određenom intervalu, imajte na umu da će at pokrenuti ciljni posao jednom, dok bi cron ponovo pokrenuo posao u intervalu. Alat at manje je popularan u odnosu na cron, ali je relativno lakši za upotrebu. Možete koristiti određene ključne riječi poput ponoći ili čaja (4 str.M.).

Ovaj se alat ne instalira unaprijed u većini Linux distribucija. Za instalaciju na, pokrenite odgovarajuću naredbu u skladu s vašom distro.

Za Debian / Ubuntu i derivate.

$ Sudo apt install -y na


Za CentOS / RHEL i derivate.

$ yum instalirati na

Za Arch Linux i derivate.

$ sudo Pacman -S na

Za Fedoru i derivate.

$ sudo dnf instalirati na

Nakon završetka instalacije omogućite at daemon.

$ sudo systemctl enable --now atd.servis


Način rada je malo drugačiji. Kad god pozivate, morate definirati interval izvođenja željenog zadatka. Na primjer, da biste pokrenuli određenu naredbu nakon sat vremena, upotrijebite sljedeću naredbu.

$ sada + 1 sat


Za pokretanje željenog zadatka na 6 P.M., za šest dana, umjesto toga, pokrenite sljedeću naredbu.

$ u 18:00 + 6 dana


Kada pokrenete naredbu, po želji zatražite pokretanje naredbi. Da biste zatvorili prompt, pritisnite “Ctrl + d.”Sada će predstaviti sažetak planiranih zadataka i vrijeme njihovog izvršenja.

Ovo je samo osnovna upotreba. Konzistentniji način upotrebe at mogao bi biti izvršavanje bash skripte koja sadrži sve zadatke koje treba izvršiti. Zanima me više o bash skriptiranju? Ček

$ u 18:00 + 6 dana -ff