Knowledgebase Udhëzime të thjeshta për të punuar me shërbimin Profitserver
Kryesor Knowledgebase Si të lexoni regjistrat e Linux dhe ku mund ta gjeni atë

Si të lexoni regjistrat e Linux dhe ku mund ta gjeni atë


Kur hasni ndonjë problem me performancën e serverit tuaj, gjëja e parë që duhet të bëni është të kontrolloni regjistrat e Linux-it . Në regjistrin e sistemit, mund të gjeni disa mesazhe të dobishme diagnostikuese nga komponentë të ndryshëm të sistemit operativ si bërthama ose shërbime të ndryshme, kështu që ka shumë të ngjarë të gjeni shkakun e dështimit atje.

Çdo mesazh në regjistër gjenerohet si rezultat i ngjarjeve të caktuara në sistemin operativ: nga përdoruesi, autorizimi për mbylljen e shërbimit ose dështimi i aplikacionit. Këto ngjarje kanë prioritete të ndryshme në varësi të asaj se sa kritike janë. Ekzistojnë llojet e mëposhtme të ngjarjeve në Linux:

  1. emerg - dështimi, prioriteti më i lartë;
  2. alert - paralajmërim urgjent;
  3. crit - ngjarje kritike;
  4. err - gabim i zakonshëm;
  5. warn - paralajmërim i zakonshëm;
  6. notice - njoftimi;
  7. info - mesazh informativ;
  8. debug - informacioni i korrigjimit;

Për momentin, shërbimet kryesore të mbledhjes së regjistrave në Linux janë rsyslog dhe systemd-journald . Ato shkojnë me shumicën e paketave moderne të shpërndarjes dhe funksionojnë në mënyrë të pavarur.

rsyslog

Regjistrat e këtij shërbimi ndodhen në dosjen “ /var/log/ ” në formën e skedarëve të zakonshëm tekstualë. Mesazhet e regjistrit vendosen në skedarë të ndryshëm në varësi të llojit të ngjarjes. Për shembull, “ /var/log/auth.log ” përmban informacion mbi autorizimin e përdoruesve në sistem, dhe “ /var/log/kern.log ” përmban mesazhe të bërthamës. Emrat e skedarëve mund të ndryshojnë në të gjitha paketat e shpërndarjes, prandaj le të hedhim një vështrim në skedarin e konfigurimit për të krijuar një ide se ku ndodhet “ /etc/rsyslog.d/50-default.conf ”.

Sbor logov Linux utilitoy rsyslog

Këto rregulla shfaqin se cili skedar përmban secilin lloj mesazhesh të regjistrit. Pjesa e majtë shfaq llojin e mesazhit në formën e mëposhtme " [Burimi].[Prioriteti] " dhe pjesa e djathtë shfaq emrin e skedarit të regjistrit. Gjatë shkrimit të llojit të mesazhit mund të shtohet karakteri " * ". Do të thotë vlerë boshe ose " asnjë " që e heq atë nga lista. Le t'i hedhim një vështrim më të afërt dy rregullave të para.

“auth,authpriv.* /var/log/auth.log”
“*.*;auth,authpriv.none -/var/log/syslog”

Rregulli i parë do të thotë që të gjitha mesazhet e marra nga mekanizmi i autorizimit do të regjistrohen në skedarin " /var/log/auth.log ". Të gjitha përpjekjet e autorizimit (si të suksesshme ashtu edhe jo) do të regjistrohen në këtë skedar. Rregulli i dytë tregon se të gjitha mesazhet përveç atyre të lidhura me autorizimin do të regjistrohen në skedarin " /var/log/syslog ". Këto dy skedarë janë zakonisht më të njohurit. Rregullat e mëposhtme përcaktojnë rrugën për të ruajtur regjistrat e kernelit " kern.* " dhe regjistrat e shërbimit postar " mail.* ".

Skedarët e regjistrave mund të hapen me ndihmën e çdo redaktuesi teksti, si less , cat , tail . Le të hapim skedarin “ /var/log/auth.log

less /var/log/auth.log
Shkrimi në log-fajle Linuks о неудачной попытке autorizationi SSH

Çdo rresht i skedarit është një mesazh i veçantë i marrë nga aplikacioni ose shërbimi. Të gjitha mesazhet pavarësisht nga burimi i tyre kanë një format dhe përbëhen nga 5 pjesë. Le të marrim si shembull mesazhin e theksuar në pamjen e ekranit.

  1. Vula kohore e mesazhit - "12 shkurt 06:18:33"
  2. Emri i kompjuterit që dërgoi mesazhin - "vds"
  3. Emri i aplikacionit ose shërbimit që dërgoi mesazhin - "sshd"
  4. ID-ja e procesit - [653]
  5. Teksti i mesazhit - "Fjalëkalimi i pranuar për mihail nga porti 188.19.42.165 2849 ssh2"

Ky ishte një shembull i një lidhjeje të suksesshme me SSH.

Dhe ja se si duket një përpjekje e pasuksesshme për hyrje:

Lexoni login Linux

Ky skedar gjithashtu regjistron komanda me leje të avancuara

Si mund të lexoni log Linux

Le të hapim skedarin /var/log/ syslog

Një mesazh i theksuar në pamjen e ekranit është mesazhi për mbylljen e ndërfaqes së rrjetit.

Utilita logorotate

Për të kërkuar informacion përmes skedarëve të gjatë tekstualë, përdorni programin grep . Mund të gjeni të gjitha mesazhet e marra nga shërbimi pptpd në skedarin " /var/log/syslog ".

grep 'pptpd' /var/log/syslog
skedari "/etc/logrotate.d/rsyslog"

Gjatë diagnostikimit mund të përdorni programin tail që mund të shfaqë disa rreshta të fundit të skedarëve. Komanda “ tail -f /var/log/syslog ” do t'ju lejojë të shikoni regjistrimin e regjistrave në kohë reale.

Shërbimi rsyslog është shumë fleksibël dhe i fuqishëm. Mund të përdoret për mbledhjen e të dhënave në sistemet lokale, si dhe në nivel ndërmarrjeje. Mund të gjeni dokumentacionin e plotë në faqen zyrtare të internetit https://www.rsyslog.com/

Rrotullimi i regjistrave në Linux

Regjistrimi i regjistrave ndodh vazhdimisht, kështu që madhësia e skedarëve rritet vazhdimisht. Mekanizmi i rrotullimit siguron arkivimin automatik të regjistrave të vjetër dhe krijimin e skedarëve të rinj. Në varësi të rregullave, kjo mund të ndodhë çdo ditë, javore, mujore ose sipas limitit të madhësisë. Ndërsa krijohen regjistra të rinj, ato të vjetrat mund të fshihen ose të dërgohen me email. Rrotullimi i regjistrave kryhet nga programi logrotate . Mund ta gjeni konfigurimin kryesor në skedarin " /etc/logrotate.conf ". Përmbajtja e skedarëve përpunohet gjithashtu në dosjen " /etc/logrotate.d/ ".

Rregullat e reja mund të regjistrohen në skedarin kryesor të konfigurimit. Megjithatë, është më mirë të krijoni një skedar të veçantë në " /etc/logrotate.d/ ". Si parazgjedhje, ka disa skedarë në këtë drejtori.

Настраиваем ротацию логов во Линукс

Le të hedhim një vështrim në skedarin " /etc/logrotate.d/rsyslog " që përmban rregullat e rrotullimit për regjistrat e shërbimit rsyslog.

Shembull вывода всех ошибок pptpd në лог-файлах

Së pari, rregulli duhet të përmbajë shtegun drejt skedarit të regjistrit dhe më pas të kalojë të gjitha udhëzimet në kllapa të lakuara.

  • rrotullohen 7 - numri i skedarëve për të mbajtur - 7
  • përditë - krijoni një skedar të ri çdo ditë
  • ngjesh - Kompresoni dhe arkivoni skedarët e vjetër
Lexoni logi Linuks

Në pamjen e ekranit mund të shihni se në dosjen " /var/log/ " ndodhen regjistri kryesor " syslog " dhe 7 arkiva, të cilat korrespondojnë me rregullat në skedarin e konfigurimit.

Mund të gjeni një përshkrim më të detajuar të logrotate në manual, duke ekzekutuar komandën " man logrotate ".

Mbledhja e regjistrave të Linux - ditar

Shërbimi i mbledhjes së regjistrave systemd-journald është pjesë e sistemit të inicializimit systemd . Skedarët e regjistrave të Linux ruhen në " /var/log/journal/ " në një format të veçantë dhe mund të hapen me ndihmën e programit journalctl . Formati i regjistrave është saktësisht i njëjtë me atë të rsyslog.

Komanda journalctl pa atribute tregon të gjitha të dhënat, por nuk është e përshtatshme për regjistra më të mëdhenj. Le të hedhim një vështrim në disa opsione të këtij programi.

  • journalctl -b - shfaq të gjitha rekordet që nga fillimi i fundit
  • journalctl -S "2020-02-17 12:00" -U "2020-02-17 12:10" - tregoni rekordin brenda një periudhe të caktuar kohore
  • journalctl -u pptpd - tregoni të dhënat e një shërbimi të caktuar
  • journalctl -k - shfaq mesazhet e kernelit
  • journalctl -p err - shfaq mesazhe të një prioriteti të caktuar, mesazhe me përparësi më të lartë në këtë rast (crit, alarm, emerg)
  • journalctl -f - shfaqni mesazhet në kohë reale

Për fleksibilitet më të mirë, mund t'i kombinoni këto opsione. Le të tregojmë të gjitha gabimet e shërbimit pptpd.

journalctl -u pptpd -p err
e fundit

Nëse specifikoni shtegun për në skedarin ekzekutues si një atribut, programi do të shfaqë të gjitha mesazhet e dërguara nga ky skedar. Le të shfaqim të gjitha mesazhet e dërguara nga skedari " /usr/bin/sudo " që nga ora 04:15 më 18 shkurt 2020. Në fakt, do të shfaqë të gjitha komandat e ekzekutuara me leje më të larta.

journalctl -S "2020-02-18 04:15" /usr/bin/sudo
командой lastb

Për të zbuluar se sa hapësirë ​​​​në disk zënë skedarët e regjistrit për të ekzekutuar komandën e mëposhtme

journalctl --disk-usage

Për të kufizuar skedarin log në 1 Gb, ekzekutoni komandën e mëposhtme

journalctl --vacuum-size=1G

Hapja e skedarëve binare

Tani le të hedhim një vështrim në disa skedarë të veçantë në dosjen “ /var/log/ ”, ku ruhen të gjitha përpjekjet e hyrjes. Këta skedarë janë binarë dhe mund të hapen vetëm me programe të veçanta.

/var/log/wtmp përmban informacion mbi përpjekjet e suksesshme të hyrjes. Përdorni programin e fundit për ta hapur atë.

утилита lastlog

/var/log/btmp - përmban të gjitha përpjekjet e dështuara të hyrjes. Mund të hapet me lastb me leje të avancuara. Atributi -n përcakton numrin e rreshtave të shfaqura nga fundi i skedarit.

/var/log/lastlog - përmban kohën e veprimit të fundit të hyrjes për çdo regjistrim në llogari. Mund të hapet me lastlog.

❮ Artikulli i mëparshëm Redaktorët e tekstit Linux
Artikulli tjetër ❯ Si të konfiguroni ndërfaqet e rrjetit në CentOS

Na pyesni për VPS

Ne jemi gjithmonë të gatshëm t'u përgjigjemi pyetjeve tuaja në çdo kohë të ditës apo natës.