Cron i Crontab

Cron i Crontab

offline
  • Fil  Male
  • Legendarni građanin
  • Pridružio: 11 Jun 2009
  • Poruke: 14644

One poslove koje su korisnici Windowsa obavljali preko Task Schedulera, korisnici Unix-like sistema mogu da obave preko Cron-a.

Cron, dakle, omogućava zakazivanje poslova (dakle, određenih komandi/skripti) u određeno vreme i, takođe, omogućava periodično izvršavanje tih poslova.

Crontab (Cron table) je tekstualna datoteka, u koju dodajemo Cron unose i naznačavamo u koje periode će se pokrenuti određeni unos.

Alat se koristi za održavanje sistema, administraciju sistema i drugih poslova.

Cron se automatski pokrece sa lokacije: /etc/init.d i traži crontab-ove unutar [izvor: link ] :

Arrow spool oblast: /var/spool/cron/crontabs
// ucitavaju se u memoriju
* crontab-ovima, u ovoj oblasti, se ne treba direktno pristupati, vec preko crontab komande.

Arrow Lokacija: /etc/crontab
// ovde dolaze u obzir i podfolderi: 'cron.hourly', 'cron.daily', 'cron.weekly' i 'cron.monthly'. Ukoliko stavimo skript unutar jednog od ovih direktorijuma, skript će se pokretati svakog časa, dana, sedmično ili mesečno, respektivno.
* ovim unosima se može direktno pristupati
* Datoteka /etc/crontab je "system wide", dakle, na nivou celog sistema, za sve korisnike i ovoj datoteci mogu pristupiti samo administratori.

Arrow Lokacija: /etc/cron.d

Svaki korisnik mašine može da ima svoje crontabove (osim ukoliko to nije zabranjeno od strane administratora. Videti sekciju "ostalo").


Lokacija datoteke iz foldera etc:



Idea Primer upotrebe: LINK


Crontab komanda ima sledeće parametre:

Citat: crontab -e --> izmena crontab datoteke ili kreacija nove (ako ista ne postoji)
crontab -l --> prikaz sadržaja crontab datoteke.
crontab -r --> uklanjanje crontab datoteke.
crontab -u --> privilegovani korisnici mogu da koriste ovu opciju da menjaju crontab drugih korisnika. Više o tome: link.


Idea U literaturi se pominje da na nekim mašinama postoji i crontab -v , koji prikazuje vreme zadnje izmene crontab fajla; ja ovaj switch nemam.



Upotreba crontaba


Iz primera se može videti sledeći unos u crontab-u:

 05 0 * * * root /root/scripts/sarg.daily
 15 1 * * 1 root /root/scripts/sarg.weekly
 0 2 1 * * root /root/scripts/sarg.monthly


Da bi rastumačili šta znače ove vrednosti, kreirao sam sledeću sliku:




Prakticni primeri i objašnjenja se mogu sagledati iz ove slike:




Iz primera se može videti da su dozvoljeni karakteri "," i "-", gde zarezom označavamo više pokretanja u specifična vremena, a crticom kontinuitet u izvršavanju (videti primere).



Ostalo:


Arrow Ukoliko želite da komanda crontab -e pokrene neki drugi editor (po default je "vi"), kucajte:
Citat:export EDITOR=nano
crontab -e

Da vratite na "vi" - export EDITOR=vi


Arrow Ukoliko želite da kontrolišete ko ima pristup cron-u. Moguce je koristiti jednu od ovih datoteka, ili obe:
- Datoteka: /etc/cron.allow
- Datoteka: /etc/cron.deny
// potrebno je uneti ime korisnika u odgovarajucu datoteku.

Primeri:
echo ALL >>/etc/cron.deny //zabranjuje cron svim korisnicima
echo bocke >>/etc/cron.allow //bocke može da koristi blagodeti cron-a


Arrow Po defaultu, Cron šalje email korisniku koji izvršava neki cron posao.
Moguće je onemogućiti slanje mail-a, na kraju komande je neophodno uneti: >/dev/null 2>&1 .
// ( više informacija )



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
Ko je trenutno na forumu
 

Ukupno su 527 korisnika na forumu :: 37 registrovanih, 8 sakrivenih i 482 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 1567 - dana 15 Jul 2016 20:18

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: _Sale, atrkulja, branko7, bulovic, dimitrovskid, DJ GlavomITacticalBeardom, Drug pukovnik, Gama, goxin, indja, Kožedub, KUZMAR, Libertas, Logic005, majorgaspar, Metanoja, milos.cbr, Mirage 2000N, miroslavtm12, misa1xx, mrav pesadinac, novator, panzerwaffe, Profica, ray ban11, robertino, sevenino, Shajlok, SlobaBgd, Sr.Stat., StefanNBG90, USSVoyager, vasa.93, Voja1978, vukdra, Yellow Pinky, zola92