Introducere în Linux Un ghid la îndemână - "Tille" Garrels
Introducere în Linux Un ghid la îndemână - "Tille" Garrels
Introducere în Linux Un ghid la îndemână - "Tille" Garrels
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
sistem a unei baze de date standard), aşa că programarea unei alte sarcini <strong>la</strong> aceeaşi oră poate duce lesne<br />
<strong>la</strong> <strong>în</strong>cetinirea sistemului, <strong>în</strong> loc să-l accelereze. Pentru a preveni situaţiile <strong>în</strong> care sarcinile sunt ru<strong>la</strong>te <strong>în</strong><br />
ace<strong>la</strong>şi timp, puteţi folosi şi comanda batch, care verifică procesele şi asigură executarea acestora de către<br />
sistem <strong>în</strong>tr-o manieră echilibrată, eliminând solicitarea maximă a resurselor sistemului. Consultaţi paginile<br />
Info pentru mai multe informaţii.<br />
4.4.4. Cron şi crontab<br />
Sistemul cron este gestionat de serviciul (daemon) cron. Acest program adună informaţii despre<br />
programe şi despre momentele <strong>în</strong> care acestea sunt programate să ruleze, folosind intrările din fişierul<br />
crontab, generate de sistem sau de utilizatori. Numai administratorul de sistem are dreptul să acceseze<br />
fişierele crontab ale sistemului, utilizatorii fără privilegii speciale având propriile fişiere crontab <strong>în</strong> care pot<br />
introduce sarcini care vor fi executate <strong>la</strong> un anumit moment. Pe anumite sisteme, utilizatorii obişnuiţi pot să<br />
nu aibă deloc acces <strong>la</strong> facilităţile cron.<br />
La pornirea sistemului, serviciul cron caută <strong>în</strong> directorul /var/spool/cron intrări <strong>în</strong> fişierele<br />
crontab care sunt denumite după conturile existente <strong>în</strong> /etc/passwd, caută <strong>în</strong> /etc/cron.d/ şi<br />
/etc/crontab, apoi foloseşte aceste informaţii <strong>în</strong> fiecare minut, pentru a verifica dacă are ceva de făcut.<br />
Va executa comenzile cu drepturile asociate utilizatorului care deţine fişierul crontab şi trimite mesaje care<br />
conţin ieşirile generate de programele executate acestor utilizatori.<br />
Pe sistemele care folosesc Vixie, sarcinile care se repetă <strong>la</strong> fiecare oră, zilnic, săptămânal şi lunar<br />
au intrări separate, <strong>în</strong> directoarele /etc, pentru a putea fi trecute <strong>în</strong> revistă mai uşor, comportament care este<br />
opus funcţiilor cron standard din UNIX, care foloseşte un singur fişier, mai mare, pentru toate intrările.<br />
Iată un exemplu de fişier crontab Vixie:<br />
Alternativă<br />
Puteţi folosi oricând comanda crontab -l pentru afişarea fişierelor crontab.<br />
Sunt stabilite câteva variabile, după care sunt afişate sarcinile programate, fiecare pe o linie<br />
separată, <strong>în</strong>cepând cu cinci câmpuri care arată ora şi data. Primul câmp conţine minutele (de <strong>la</strong> 0 <strong>la</strong> 59),<br />
următorul arată ora <strong>la</strong> care sarcina va fi ru<strong>la</strong>tă (0-23), cel de-al treilea câmp arată ziua din lună (1-31),apoi<br />
numărul lunii (1-12), ultimul câmp fiind pentru ziua săptămânii (0-7, atât 0 cât şi 7 fiind duminica). <strong>Un</strong> asterisc<br />
prezent <strong>în</strong> aceste câmpuri reprezintă acceptarea tuturor valorilor aplicabile acelui câmp. Sunt permise şi<br />
listele; pentru a ru<strong>la</strong> o sarcină de luni până vineri, introduceţi 1-5 <strong>în</strong> ultimul câmp, iar pentru a ru<strong>la</strong> o sarcină<br />
luni, miercuri şi vineri, introduceţi 1,3,5.<br />
Apoi este arătat utilizatorul pentru care trebuie să ruleze procesele, listat <strong>în</strong> ultima coloană.<br />
Exemplul de mai sus arată o configuraţie cron Vixie, <strong>în</strong> care administratorul rulează programul run-parts <strong>la</strong><br />
intervale regu<strong>la</strong>te, având ca opţiuni directoarele potrivite. În aceste directoare, sarcinile propriu-zise care<br />
trebuie să fie ru<strong>la</strong>te <strong>în</strong> momentele stabilite, sunt stocate ca scripturi shell, precum următorul, care rulează<br />
zilnic, pentru a actualiza baza de date folosită de comanda locate:<br />
86