crontab

Kako razporediti naloge v Linuxu?

Kako razporediti naloge v Linuxu?
Kadar koli uporabljate operacijski sistem, ki temelji na UNIX, je treba določena opravila izvajati večkrat. Zagon vsakega ročno je zamuden in na splošno neučinkovit. Da bi rešili to težavo, ima UNIX vgrajene načrtovalnike opravil. Ti načrtovalci opravil delujejo kot pametna budilka. Ko se alarm sproži, bo operacijski sistem zagnal vnaprej določeno nalogo.

V primeru Linuxa je na voljo dve osnovni, a zmogljivi orodji: demon Cron (privzeti načrtovalnik opravil) in na (bolj primeren za enkratno razporejanje opravil).

V tem priročniku si oglejte, kako razporedite opravilo v Linuxu.

Načrtujte naloge v Linuxu

Cron
Demon cron je odgovoren za izvajanje številnih opravil ob določenem času. Te naloge se običajno izvajajo v ozadju ob načrtovanem času. Ponuja veliko prilagodljivost ne glede na nalogo, ne glede na interval (ura, teden, mesec, leto ali kar koli drugega).

Cron spremlja svoja dejanja z uporabo datoteke crontab. Datoteka crontab je skript, ki vsebuje vse potrebne informacije za zagon vseh opravil cron.

Oglejmo si na kratko nekaj osnovnih načinov uporabe crona. V primeru katerega koli od naslednjih ukazov bo konfiguriran za korenskega uporabnika, če se izvaja s privilegiji sudo. Za predstavitev sem od tu vzel vzorčno datoteko crontab.

Če želite seznam vseh načrtovanih opravil cron za trenutnega uporabnika, zaženite naslednji ukaz. Natisnil bo vso vsebino datoteke crontab.

$ crontab -l


Želite seznam opravil cron za drugega uporabnika? Namesto tega zaženite ta ukaz.

$ sudo crontab -u -l


Če želite urediti skript crontab, zaženite ukaz. Če želite datoteko crontab urediti za root, zaženite naslednji ukaz s privilegiji sudo.

$ crontab -e


Vsaka vrstica v skriptu crontab definira nalogo. Tu je hitra razčlenitev vnosov crontab.

$

Tu je seznam vseh možnih vrednosti za vsa ta polja. Če je namesto številske vrednosti uporabljena zvezdica (*), bodo uporabljene vse možne vrednosti polja.

  • minuta: 0 do 59
  • ure: od 0 do 23
  • dan v mesecu: od 1 do 31
  • mesec: od 1 do 12
  • dan v tednu: 0 (nedelja) do 6 (sobota)

Za poglobljen vodnik o tem, kako uporabljati crontab za avtomatizacijo opravil, si oglejte, kako nastavite opravila cron v Linuxu. Tu je še en hiter primer opravila cron, ki se izvaja vsako minuto.

ob
Medtem ko je cron primarni način razporejanja opravil, at ponuja možnost za zagon ukaza / skripta ob določenem času ali v določenem intervalu, upoštevajte, da bo at enkrat zagnal ciljno opravilo, medtem ko bi cron znova zagnal opravilo v intervalu. Orodje at je manj priljubljeno v primerjavi s cron, vendar je razmeroma lažje za uporabo. Uporabite lahko nekatere ključne besede, na primer polnoč ali čaj (4 str.M.).

To orodje ni vnaprej nameščeno v večini distribucij Linuxa. Če želite namestiti na, zaženite ustrezen ukaz glede na vaš distro.

Za Debian / Ubuntu in izpeljanke.

$ Sudo apt namestite -y na


Za CentOS / RHEL in derivate.

$ yum namestite na

Za Arch Linux in izpeljanke.

$ sudo Pacman -S pri

Za Fedoro in izpeljane finančne instrumente.

$ sudo dnf namestite na

Po končani namestitvi omogočite demon.

$ sudo systemctl enable --now atd.storitev


Način dela je nekoliko drugačen. Kadarkoli kličete, morate določiti interval izvajanja želene naloge. Če želite na primer po eni uri zagnati določen ukaz, uporabite naslednji ukaz.

$ zdaj + 1 ura


Za zagon želene naloge pri 6 P.M., čez šest dni namesto tega zaženite naslednji ukaz.

$ ob 18.00 + 6 dni


Ko zaženete ukaz, po želji zahteva, da se ukazi izvajajo. Če želite zapreti poziv ob pozivu, pritisnite “Ctrl + d.”Potem bo predstavil povzetek načrtovanih nalog in čas njihovega izvajanja.

To je le osnovna uporaba. Bolj dosleden način uporabe at je lahko izvajanje bash skripta, ki vsebuje vse naloge, ki jih je treba izvesti. Zanima me več o bash skriptiranju? Preveri

$ ob 18h + 6 dni -ff