Zure zerbitzariaren errendimenduarekin arazorik duzunean, egin behar duzun lehenengo gauza Linux erregistroak egiaztatzea da . Sistemaren erregistroan, sistema eragilearen osagai desberdinetatik (kerneletik edo hainbat zerbitzutatik) diagnostiko mezu lagungarriak aurki ditzakezu, beraz, ziurrenik bertan aurkituko duzu akatsaren kausa.
Erregistroko mezu bakoitza sistema eragilearen zenbait gertakariren ondorioz sortzen da: erabiltzailearengandik, zerbitzua ixteko baimena edo aplikazioaren hutsegitea. Gertaera hauek lehentasun desberdinak dituzte, zein kritiko diren kontuan hartuta. Linuxen honako gertaera motak daude:
emerg- porrota, lehentasun handiena;alert- premiazko abisua;crit- gertaera kritikoa;err- akats arrunta;warn- abisu arrunta;notice- jakinarazpena;info- informazio-mezua;debug- arazketa-informazioa;
Momentuz, Linuxen erregistroak biltzeko zerbitzu nagusiak rsyslog eta systemd-journald dira . Banaketa pakete moderno gehienekin batera doaz eta modu independentean funtzionatzen dute.
rsyslog
Zerbitzu honen erregistroak " /var/log/ " karpetan daude, testu fitxategi arrunten moduan. Erregistro mezuak fitxategi desberdinetan jartzen dira gertaera motaren arabera. Adibidez, " /var/log/auth.log"-ek sisteman erabiltzaileen baimenari buruzko informazioa dauka, eta " /var/log/kern.log"-ek kernel mezuak. Fitxategien izenak banaketa paketeen artean alda daitezke, beraz, ikus dezagun konfigurazio fitxategia " /etc/rsyslog.d/50-default.conf " non dagoen jakiteko.
Arau hauek erregistro-mezu mota bakoitza zein fitxategik duen erakusten dute. Ezkerreko zatiak mezu mota erakusten du honako formatuan: “ [Iturria].[Lehentasuna] ” eta eskuineko zatiak erregistro-fitxategiaren izena. Idaztean, mezu motari “ * ” karakterea gehi dakioke. Balio hutsa edo “ bat ere ez ” esan nahi du, zerrendatik kentzen duena. Ikus ditzagun lehenengo bi arauak gertuagotik.
“auth,authpriv.* /var/log/auth.log”
“*.*;auth,authpriv.none -/var/log/syslog”
Lehenengo arauak esan nahi du baimen-mekanismotik jasotako mezu guztiak " /var/log/auth.log " fitxategian erregistratuko direla. Baimen-saiakera guztiak (arrakastatsuak zein huts egindakoak) fitxategi honetan erregistratuko dira. Bigarren arauak adierazten du baimenarekin lotutako mezuak izan ezik, mezu guztiak " /var/log/syslog " fitxategian erregistratuko direla. Bi fitxategi hauek dira normalean ezagunenak. Ondorengo arauek kernelaren erregistroak " kern.* " eta posta-zerbitzuaren erregistroak " mail.* " gordetzeko bidea definitzen dute .
Log fitxategiak edozein testu-editoreren laguntzarekin ireki daitezke, hala nola , less , cat , tail . Ireki dezagun “ /var/log/auth.log ” fitxategia .
less /var/log/auth.log
Fitxategiaren lerro bakoitza aplikazio edo zerbitzutik jasotako mezu bereizia da. Mezu guztiek formatu bakarra dute eta 5 zati dituzte. Har dezagun adibide gisa pantaila-argazkian nabarmendutako mezua.
- Mezuaren denbora-zigilua - "Otsailak 12 06:18:33"
- Mezua bidali duen ordenagailuaren izena - "vds"
- Mezua bidali duen aplikazio edo zerbitzuaren izena - "sshd"
- Prozesuaren IDa - [653]
- Mezuaren testua - "188.19.42.165 atakatik 2849 mihail-erako pasahitza onartu da 2 sshXNUMX"
Hau SSH-rako konexio arrakastatsu baten adibidea izan zen.
Hona hemen arrakastarik gabeko saioa hasteko saiakera baten itxura:
Fitxategi honek baimen aurreratuak dituzten komandoak ere erregistratzen ditu
Ireki dezagun /var/log/syslog fitxategia
Pantaila-argazkian nabarmendutako mezu bat sare-interfazea ixteari buruzko mezua da.
Testu-fitxategi luzeetan informazioa bilatzeko, erabili grep utilitatea. pptpd zerbitzutik jasotako mezu guztiak " /var/log/syslog " fitxategian aurki ditzakezu.
grep 'pptpd' /var/log/syslog
Diagnostikoan zehar, fitxategien azken lerro batzuk bistara ditzakeen tail utilitatea erabil dezakezu. " tail -f /var/log/syslog " komandoak erregistroen grabazioa denbora errealean ikusteko aukera emango dizu.
Rsyslog zerbitzua oso malgua eta indartsua da. Tokiko sistemetan zein enpresa mailan erregistroak biltzeko erabil daiteke. Dokumentazio osoa webgune ofizialean aurki dezakezu https://www.rsyslog.com/
Erregistroen biraketa Linux-en
Erregistroen grabaketa etengabe gertatzen ari da, beraz, fitxategien tamaina etengabe hazten ari da. Errotazio mekanismoak erregistro zaharrak automatikoki artxibatzea eta fitxategi berriak sortzea bermatzen du. Arauen arabera, egunero, astero, hilero edo tamaina mugaren arabera gerta daiteke. Erregistro berriak sortzen diren heinean, zaharrak ezabatu edo posta elektronikoz bidali daitezke. Erregistroen errotazioa logrotate utilitateak egiten du. Konfigurazio nagusia " /etc/logrotate.conf " fitxategian aurki dezakezu . Fitxategien edukia ere " /etc/logrotate.d/ " karpetan prozesatzen da.
Arau berriak konfigurazio fitxategi nagusian erregistratu daitezke. Hala ere, hobe da " /etc/logrotate.d/ " fitxategi bereizi bat sortzea. Berez, direktorio honetan fitxategi batzuk daude.
Ikus dezagun rsyslog zerbitzuaren erregistroen errotazio arauak dituen " /etc/logrotate.d/rsyslog " fitxategia.
Lehenik eta behin, arauak erregistro-fitxategirako bidea eduki behar du eta gero jarraibide guztiak kortxete kurbatuen artean joan behar dira.
- biratu 7 - gorde beharreko fitxategi kopurua - 7
- eguneroko - Sortu fitxategi berri bat egunero
- konprimitu - Konprimitu eta artxibatu fitxategi zaharrak
Pantaila-argazkian ikus dezakezu " /var/log/ " karpetan " syslog " erregistro nagusia eta 7 artxibo daudela , konfigurazio fitxategiko arauekin bat datozenak.
Logrotate-ren deskribapen zehatzagoa eskuliburuan aurki dezakezu, " man logrotate " komandoa exekutatuz.
Linux erregistroak biltzen - journald
Systemd-journald erregistroak biltzeko zerbitzua systemd hasieratze sistemaren parte da . Linux erregistro fitxategiak " /var/log/journal/ " karpetan gordetzen dira formatu berezi batean eta journalctl utilitatea erabiliz ireki daitezke . Erregistroen formatua rsyslog -en bezalakoa da.
Journalctl komandoak atributurik gabe erregistro guztiak erakusten ditu, baina ez da egokia erregistro handiagoetarako. Ikus ditzagun utilitate honen aukera batzuk.
journalctl -b- Erakutsi erregistro guztiak azken hasieratikjournalctl -S "2020-02-17 12:00" -U "2020-02-17 12:10"- Erakutsi erregistroa epe jakin bateanjournalctl -u pptpd- zerbitzu jakin baten erregistroak erakutsijournalctl -k- Nukleoko mezuak erakutsijournalctl -p err- Erakutsi lehentasun jakin bateko mezuak, lehentasun handiagoko mezuak kasu honetan (kritikoa, alerta, emerg)journalctl -f- erakutsi mezuak denbora errealean
Malgutasun handiagoa lortzeko, aukera hauek konbina ditzakezu. Erakuts ditzagun pptpd zerbitzuaren errore guztiak.
journalctl -u pptpd -p err
Exekutagarri den fitxategiaren bidea atributu gisa zehazten baduzu, utilitateak fitxategi honek bidalitako mezu guztiak erakutsiko ditu. Erakuts ditzagun “ /usr/bin/sudo ” fitxategiak 2020ko otsailaren 18ko 04:15etik aurrera bidalitako mezu guztiak. Izan ere, baimen handiagoekin exekutatutako komando guztiak erakutsiko ditu.
journalctl -S "2020-02-18 04:15" /usr/bin/sudo
Diskoko erregistro-fitxategiek zenbat toki hartzen duten jakiteko komando hau exekutatzeko
journalctl --disk-usage
Log-fitxategia 1Gb-era mugatzeko, exekutatu komando hau
journalctl --vacuum-size=1G
Fitxategi bitarrak irekitzea
Orain, " /var/log/ " karpetako fitxategi berezi batzuk aztertuko ditugu, non saioa hasteko saiakera guztiak gordetzen diren. Fitxategi hauek bitarrak dira eta programa bereziekin bakarrik ireki daitezke.
/var/log/wtmp fitxategian saioa hasteko saiakerak arrakastaz egin direnei buruzko informazioa dago. Erabili last utilitatea irekitzeko.
/var/log/btmp - saioa hasteko saiakera hutsal guztiak ditu. lastb-rekin ireki daiteke baimen aurreratuekin. -n atributuak fitxategiaren amaieratik bistaratzen diren lerro kopurua definitzen du.
/var/log/lastlog - kontu-erregistro bakoitzaren azken saioa hasteko ordua dauka. lastlog -ekin ireki daiteke