Crontab fajlovi – automatizacija taskova u Linux-u

27 априла, 2021

Cron daemon u Linux-u u pokreće definisane zadatke u određeno vreme. Nešto slično Task Scheduler-u u Windows-u. Ukoliko u crontab fajl vašeg sistema dodate neki zadatak, cron će automatski izvršiti taj zadatak onako kako ste ga definisali.

cronheader

Crontab fajlovi se najčešće koriste za automatizaciju backup-a, održavanje sistema i druge taskove koji se ponavljaju. Sintaksa omogućava da pokrenete neki task svakih 15 minuta, ili u tačno zadato vreme, na zadati dan svake godine.

Otvaranje Crontab-a

terminal

Na primeru Ubuntu distribucije daćemo primer kako koristiti Crontab. Otvorite prozor terminala iz menija aplikacija. Možete koristiti Dash ikonicu, kucajte Terminal i zatim pritisnite Enter.

crontab e

Koristite crontab-e komandu da otvorite crontab fajl. Komande u ovom fajlu se pokreću sa provilegijama definisanim za vaš korinički nalog. Ukoliko želite da se komanda pokreće sa privilegijama definisanim na nivou sistema, koristite sudo crontab -e komandu, da biste otvorili crontab file na nivou root-a. Ako vaša distribucija ne koristi sudo, onda koristite su -c crontab -e komandu.

select editor

Možda će vam sistem tražiti da izaberete editor. Ovde možete izabrati Nano ili Vi editor. Nano je lakši za korišćenje, pogotovo ukoliko ste početnik. Vi je više namenjen naprednijim korisnicima. Izbor je vaš.

nano editor

Nano editor će biti prikazan kao GNU nano header na vrhu prozora vašeg terminala. Ukoliko ne izaberete konkretno nano, crontab će verovatno biti otvoren u Vi editoru.

nano editor enter

Ukoliko niste navikli da radite sa Vi editorom, možete u njemu kucati :quit komandu i pritisnuti Enter kako biste ga zatvorili.

Pokrenite komandu export EDITOR=nano, a zatim ponovo pokrenite crontab-e komandu kako biste otvorili crontab fajl u Nano editoru.

Dodavanje novog task-a

Koristite strelice ili page down da biste skrolovali do kraja crontab fajla u Nano editoru. Linije koje počinju sa # su komentarisane linije, što znači da že one biti ignorisane od strane Cron-a. One samo daju više informacija vezano za konkretnu liniju / komandu unutar fajla.

crontab linije

Linije u crontab fajlu su napisane po sledećem redosledu, sa određenim vrednostima koje mogu biti definsane:

minute(0-59) hour(0-23) day(1-31) month(1-12) weekday(0-6) command

Možete koristiti asterisk (*) za zamenu neke vrednosti. Na primer, ako koristite * za polje mesec, komanda će se pokreniti svakog meseca.

example 1

Ukoliko recimo želite da pokrenete task /usr/bin/example u 12:30 svakog dana, kucaćemo sledeće:

29 0 * * * /usr/bin/example

Koristićemo 29 za oznaku 30. Minuta i 0 za 12 sati, zato što vrednosti za minute, sate i dane u nedelji počinju sa 0. Imajte u vidu da vrednosti za dan i mesec kreću od 1 umesto od 0.

Definisanje više vrednosti i intervala

Za definisanje više vrednosti i termina koristite zarez (,). Na primer, da biste definisali da se task usr/bin/example2 izvršava na svakih 15 minuta, svakog sata i svakog dana kucajte:

0,14,29,44 * * * * /usr/bin/example2

Svaki novi task ide na novu liniju.

Za definisanje intervala koristite crticu (-). Na primer komanda

0 11 * 1-6 * /usr/bin/example3

pokreće zadatak pod nazivom example3 u podne svakog dana, ali samo u prvih 6 meseci u godini.

Čuvanje fajla

Da biste sačuvali crontab fajl u Nano editoru, pritisnite Ctrl-O i zatim pritisnite Enter. Da biste ga zatvorili nakon što ste ga sačuvali kucajte Ctrl-X.

example 2

Videćete poruku “crontab: installing new crontab” koja znači da je vaš novi crontab fajl uspešno instaliran / sačuvan. Na taj način mogu biti definisani i drugi crontab fajlovi koje želite da definišete na vašem sistemu.

 

Slični postovi:

Bez komentara

Оставите одговор

Ваша адреса е-поште неће бити објављена. Неопходна поља су означена *