cron je razporejevalnik opravil za operacijske sisteme Linux in Unix. Prednameščen je v vseh distribucijah Linuxa in je najbolj primeren za avtomatizacijo ponavljajočih se opravil.
Za pravilno delovanje crona morate redno preverjati, ali pripomoček v vašem sistemu deluje dobro. To lahko storite na štiri različne načine, vključno s preverjanjem statusa storitve cron, pregledovanjem dnevnikov cron, izvajanjem testnega opravila cron in seznamom izvajajočih se procesov v vašem sistemu.
Kaj je cron?
Tihi upravljalnik opravil, cron, avtomatizira in načrtuje sistemske naloge. Uporabniki, ki konfigurirajo in vzdržujejo programska okolja, uporabljajo cron za načrtovanje opravil, kot so ukazi ali lupinski skripti – imenovani tudi opravila cron – za redno izvajanje ob določenih urah ali intervalih.
cron avtomatizira naloge vzdrževanja sistema ali administracije, ki jih boste morda morali pogosto izvajati.
Kako preveriti, ali cron deluje v sistemu Linux
Tukaj je nekaj načinov, kako lahko preverite, ali cron deluje pravilno:
1. način: Preverite stanje storitve cron v sistemu Linux
Eden od načinov za preverjanje, ali cron deluje, je preverjanje statusa storitve cron z izvajanjem osnovnega ukaza Linux. Odprite terminal Linux s pritiskom Ctrl + Alt + T in uporabo ukaz systemctl za preverjanje statusa cron:
sudo systemctl status cron
Če vidite naslednji izpis, to pomeni, da je cron aktiven in v vašem sistemu deluje dobro.
Kaj pa, če je cron v neaktivnem stanju, kot je prikazano spodaj?
Storitev lahko zaženete takole:
sudo storitev cron začetek
Po zagonu storitve cron jo omogočite tako, da se zažene ob vsakem ponovnem zagonu sistema:
sudo storitev cron omogočiti
2. način: Preverite dnevnike cron v sistemu Linux
Drug način za preverjanje, ali cron deluje pravilno, je pregled dnevniških datotek. dnevniki cron so shranjeni v /var/log/syslog imenik v sistemu Linux.
syslog je protokol, ki ga sistemi Linux uporabljajo za centralizacijo dnevnikov podatkov o dogodkih. Nato se dostopa do dnevnikov za izvajanje revizij, spremljanja, odpravljanja težav, poročanja in drugih potrebnih operativnih nalog IT.
Dnevnike opravil cron si lahko ogledate v datoteki syslog tako, da izvedete naslednji ukaz:
grep CRON /var/log/syslog
Videli boste podoben izpis, ki kaže, da cron deluje dobro in da so njegovi dnevniki shranjeni v dnevniški datoteki:
Ker mapa syslog poleg dnevnikov cron vsebuje tudi druge sistemske dnevnike, je lahko nekoliko težavno pregledati samo dnevnike, povezane s cron, v datoteki. To lahko rešite tako, da ustvarite ločeno datoteko dnevnika, ki shranjuje samo vnose cron, ki so prikazani v datoteki syslog.
Če želite to narediti, odprite naslednjo datoteko z urejevalnikom nano:
nano /etc/rsyslog.d/50-privzeto.conf
Poiščite vrstico, ki se začne z:
#cron.*
Odkomentirajte to vrstico tako, da odstranite zgoščeno vrednost (#) znak. Nato shranite in zaprite datoteko s pritiskom na Ctrl + X, nato pritisnite Y in udaril Vnesite.
Znova zaženite storitev rsyslog z izdajo tega ukaza:
ponovni zagon storitve sudo rsyslog
Zdaj boste prejeli dnevnike v cron.log datoteka, ki se nahaja v /var/log imenik.
Če vaš terminal ne pridobi nobenih dnevnikov, to lahko pomeni, da se cron ne izvaja. V tem primeru preverite, ali cron deluje ali ne uporablja drugih metod.
3. način: Izvajanje opravila cron v sistemu Linux
Prav tako lahko preverite, ali cron deluje tako, da preprosto ustvarite testno opravilo cron in ga izvedete. Če opravilo uspešno opravi nalogo, to pomeni, da deluje dobro.
Najprej morate ustvarite skript Bash. Skriptiranje Bash vam omogoča avtomatizacijo vsakodnevnih opravil v Linuxu.
Ustvarimo skript Bash, ki bo natisnil "moj cronjob deluje!" v datoteko TXT. Če želite ustvariti datoteko, najprej poiščite svoj trenutni delovni imenik s tem ukazom:
pwd
Ustvarite datoteko v trenutnem imeniku z ukazom na dotik:
dotikmapa.txt
Po tem ustvarite datoteko Bash z uporabo nano:
nanoscenarij.sh
V datoteko dodajte naslednjo vsebino:
#! /usr/bin/bash
odmev "moj cronjob deluje!" >> /home/username/file.txt
Poskrbite, da boste zagotovili pravilno lokacijo besedilne datoteke, ki ste jo ustvarili. Shranite in zaprite datoteko s pritiskom na Ctrl + X, potem Y, in udaril Vnesite.
Dajte dovoljenja za izvajanje skriptu Bash:
chmod +xscenarij.sh
Zdaj ustvarite opravilo cron za izvedbo skripta. Če želite to narediti, odprite datoteko crontab z:
crontab -e
Na koncu datoteke vnesite naslednjo vrstico.
* * * * * /path/v/script.sh
Pet zvezdic se ujema s časom izvedbe, pri čemer prva zvezdica predstavlja minute, druga predstavlja ure, tretja zvezdica pomeni dan, četrta označuje mesec, zadnja zvezdica pa označuje leto.
V datoteki sta omenjena tudi ime izvršljive datoteke in njena pot.
Ko shranite in zaprete datoteko, boste videli "crontab: namestitev novega crontaba« sporočilo na terminalu.
Če želite preveriti, ali je opravilo cron delovalo ali ne, pojdite v imenik datoteka.txt in natisnite njegovo vsebino na terminalu z uporabo cat:
mačkamapa.txt
To pomeni, da cron deluje dobro.
4. način: Preverite izvajajoče se procese v sistemu Linux
Drug način, na katerega lahko preverite, ali demon cron deluje, je, da navedete zagnane procese v vašem sistemu. To lahko dosežete z uporabo ukaza ps. Demon cron bo v izhodu prikazan kot crond.
ps -ef | grep crond
To potrjuje, da se proces cron izvaja v vašem sistemu Linux.
Avtomatizirajte in načrtujte sistemske naloge s cron
cron je eden najpomembnejših pripomočkov v Linuxu, ki omogoča učinkovito delovanje sistema. Včasih morate med odpravljanjem sistemskih težav preveriti, ali cron deluje.
To lahko dosežete bodisi s preverjanjem dnevnikov cron bodisi z ogledom tekočih procesov v vašem sistemu. Stanje cron lahko preverite tudi s pripomočkom systemctl. Poleg tega vam lahko izvajanje testnega cron opravila tudi pove, ali se storitev izvaja ali ne.
Nemoteno delovanje crona vam omogoča avtomatizacijo in razporejanje vsakodnevnih sistemskih opravil. Večino opravil cron samodejno ustvarijo nameščene aplikacije. Avtomatizacija in razporejanje opravil izboljša celotno delovanje sistema in ga ohranja zdravega.