Ubuntu reģistrēšana. Linux žurnālfaili kārtībā. žurnālfaili un to atrašanās vieta Linux

Ievads

Viena no lietām, kas padara GNU/Linux par lielisku operētājsistēma ir tas, ka praktiski viss un viss, kas notiek sistēmā un ar to, var tikt reģistrēts kaut kādā veidā. Šī informācija ir nenovērtējama, lai sistēmu izmantotu informētā veidā, un tai vajadzētu būt vienam no pirmajiem resursiem, ko izmantojat sistēmas un lietojumprogrammu problēmu novēršanai. Žurnāli var pastāstīt gandrīz visu, kas jums jāzina, ja vien jums ir ideja, kur vispirms meklēt.

Jūsu Ubuntu sistēma sniedz svarīgu informāciju, izmantojot dažādus sistēmas žurnālfailus. Šie žurnālfaili parasti ir vienkāršs ASCII teksts standarta žurnālfaila formātā, un lielākā daļa no tiem atrodas tradicionālajā sistēmas žurnāla apakšdirektorijā /var/log. Daudzus no tiem ģenerē sistēmas žurnālu dēmons, syslogd sistēmas un noteiktu lietojumprogrammu vārdā, savukārt dažas lietojumprogrammas ģenerē savus žurnālus, ierakstot tieši failos mapē /var/log.

Šajā rokasgrāmatā ir aprakstīts, kā lasīt un izmantot vairākus no šiem sistēmas žurnālfailiem, kā izmantot un konfigurēt sistēmas reģistrēšanas dēmonu syslogd un kā darbojas žurnālu rotācija. Skatīt Resursi sadaļā, lai iegūtu papildu informāciju.

Mērķauditorija

Šī rokasgrāmata būs pietiekami vienkārša, lai to izmantotu, ja jums ir pieredze ar konsoles lietošanu un teksta failu rediģēšanu, izmantojot teksta redaktoru. Skatiet šī dokumenta beigās dažas būtiskas komandas, kas var palīdzēt jums orientēties šajos failos, ja esat salīdzinoši jauns komandrindas lietošanā.

Sistēmas žurnāli

Sistēmas žurnāli galvenokārt attiecas uz Ubuntu sistēmas darbību, ne vienmēr ar lietotāju pievienotajām papildu lietojumprogrammām. Piemēri ietver autorizācijas mehānismus, sistēmas dēmonus, sistēmas ziņojumus un visu aptverošo sistēmas žurnālu, syslog.

Autorizācijas žurnāls

Autorizācijas žurnāls izseko autorizācijas sistēmu lietojumu, lietotāju autorizācijas mehānismus, kas pieprasa lietotāja paroles, piemēram, Pluggable Authentication Module (PAM) sistēmu, sudo komandu, attālās pieteikšanās sshd un tā tālāk. Autorizācijas žurnāla failam var piekļūt vietnē /var/log/auth.log. Šis žurnāls ir noderīgs, lai uzzinātu par lietotāju pieteikšanos un sudo komandas izmantošanu.

Izmantojiet grep, lai samazinātu skaļumu. Piemēram, lai autorizācijas žurnālā skatītu tikai informāciju, kas attiecas uz sshd pieteikšanos, izmantojiet šo:

grep sshd /var/log/auth.log | mazāk

Dēmonu žurnāls

Dēmons ir programma, kas darbojas fonā, parasti bez cilvēka iejaukšanās, veicot dažas darbības, kas ir svarīgas pareizai jūsu sistēmas darbībai. Dēmons tiek reģistrēts vietnē /var/log/daemon.log un satur informāciju par palaistiem sistēmas un lietojumprogrammu dēmoniem, piemēram, Gnome Display Manager dēmonu gdm, Bluetooth HCI dēmonu hcid vai MySQL datu bāzes dēmonu mysqld. Tas var palīdzēt novērst problēmas ar noteiktu dēmonu.

Atkal izmantojiet grep, lai atrastu konkrētu informāciju, pievienojot jūs interesējošā dēmona nosaukumu.

Atkļūdošanas žurnāls

Atkļūdošanas žurnāls vietnē /var/log/debug un sniedz detalizētus atkļūdošanas ziņojumus no Ubuntu sistēmas un lietojumprogrammām, kas piesakās syslogd ATKLĀŠANAS līmenī.

Kodola žurnāls

Kodola žurnāls vietnē /var/log/kern.log nodrošina detalizētu Ubuntu Linux kodola ziņojumu žurnālu. Šie ziņojumi var izrādīties noderīgi, piemēram, jauna vai pielāgota kodola problēmu novēršanai.

Kodola gredzena buferis

Kodola gredzena buferis patiesībā nav žurnālfails pats par sevi, bet gan apgabals strādājošajā kodolā, kurā varat pieprasīt kodola sāknēšanas ziņojumus, izmantojot utilītu dmesg. Lai skatītu ziņojumus, izmantojiet šo:

dmesg | mazāk

Vai, piemēram, lai meklētu rindas, kurās ir pieminēta sistēma Plug & Play, izmantojiet grep, piemēram:

dmesg | grep pnp | mazāk

Pēc noklusējuma sistēmas inicializācijas skripts /etc/init.d/bootmisc.sh nosūta visus sāknēšanas ziņojumus arī uz failu /var/log/dmesg. Varat skatīt un meklēt šo failu parastajā veidā.

Sistēmas žurnāls

Sistēmas žurnāls parasti satur vislielāko informāciju par jūsu Ubuntu sistēmu pēc noklusējuma. Tas atrodas /var/log/syslog un var saturēt informāciju, ko citi žurnāli nesniedz. Ja nevarat atrast vajadzīgo žurnāla informāciju citā žurnālā, skatiet sistēmas žurnālu. Tajā ir arī viss, kas agrāk atradās mapē /var/log/messages.

Lietojumprogrammu žurnāli

Daudzas lietojumprogrammas arī izveido žurnālus mapē /var/log. Ja uzskaitīsiet sava /var/log apakšdirektorija saturu, jūs redzēsit pazīstamus nosaukumus, piemēram, /var/log/apache2, kas apzīmē Apache 2 žurnālus. tīmekļa serveris, vai /var/log/samba , kurā ir Samba servera žurnāli. Šajā rokasgrāmatas sadaļā ir sniegti daži konkrēti lietojumprogrammu žurnālu piemēri un tajos ietvertā informācija.

Apache HTTP servera žurnāli

Apache2 noklusējuma instalācija Ubuntu izveido žurnāla apakšdirektoriju: /var/log/apache2. Šajā apakšdirektorijā ir divi žurnālfaili ar diviem atšķirīgiem mērķiem:

    /var/log/apache2/access.log — ieraksti par katru apkalpoto lapu un katru failu, ko ielādējis tīmekļa serveris.

    /var/log/apache2/error.log — visu HTTP servera ziņoto kļūdu apstākļu ieraksti

Pēc noklusējuma katru reizi, kad Apache piekļūst failam vai lapai, piekļuves žurnālos tiek ierakstīta IP adrese, laiks un datums, pārlūkprogrammas identifikācijas virkne, HTTP rezultāta kods un faktiskā vaicājuma teksts, kas parasti ir lapas skatījuma GET. Apskatiet Apache dokumentāciju, lai iegūtu pilnīgu informāciju; diezgan daudz var iegūt no šī faila, un patiešām pastāv daudzas statistikas pakotnes, kas veic šo žurnālu analīzi.

Turklāt katru reizi, kad rodas kāda kļūda, Apache kļūdu žurnālam pievieno rindiņu. Ja palaižat PHP ar atspējotiem kļūdu un brīdinājuma ziņojumiem, tas var būt vienīgais veids, kā identificēt kļūdas.

CUPS drukas sistēmas žurnāli

Kopējā Unix drukāšanas sistēma (CUPS) informatīvo un kļūdu ziņojumu glabāšanai izmanto noklusējuma žurnālfailu /var/log/cups/error_log. Ja jums ir jāatrisina drukāšanas problēma Ubuntu, šis žurnāls var būt laba vieta, kur sākt.

Rootkit Hunter žurnāls

Rootkit Hunter utilīta (rkhunter) pārbauda, ​​vai jūsu Ubuntu sistēmā nav aizmugures durvju, snifferu un sakņu komplektu, kas liecina par jūsu sistēmas kompromitēšanu. Rkhunter izmantotais žurnāls atrodas vietnē /var/log/rkhunter.log.

Samba SMB servera žurnāli

Servera ziņojumu bloka protokola (SMB) serveris Samba tiek plaši izmantots failu koplietošanai starp jūsu Ubuntu datoru un citiem datoriem, kas atbalsta SMB protokolu. Samba glabā trīs atšķirīgus žurnālu veidus apakšdirektorijā /var/log/samba:

    log.nmbd — ziņojumi, kas saistīti ar Samba NETBIOS over IP funkcionalitāti (tīkla saturs)

    log.smbd — ziņojumi, kas saistīti ar Samba SMB/CIFS funkcionalitāti (failu un drukas koplietošanas saturu)

    žurnāls. - ziņojumi, kas saistīti ar pakalpojumu pieprasījumiem no IP adreses, kas ietverta žurnālfaila nosaukumā, piemēram, log.192.168.1.1 .

X11 servera žurnāls

Noklusējuma X11 logu serveris, kas tiek izmantots ar Ubuntu, ir Xorg X11 serveris, un, pieņemot, ka jūsu datoram ir definēts tikai viens displejs, žurnāla ziņojumi tiek glabāti failā /var/log/Xorg.0.log. Šis žurnāls ir noderīgs, lai diagnosticētu X11 vides problēmas.

Cilvēkam nelasāmi žurnāli

Daži žurnālfaili, kas atrodas apakšdirektorijā /var/log, ir izstrādāti tā, lai tos varētu lasīt lietojumprogrammas, nevis cilvēki. Tālāk ir sniegti daži šādu žurnālfailu piemēri, kas parādās mapē /var/log.

Pieteikšanās kļūdu žurnāls

Pieteikšanās kļūdu žurnāls, kas atrodas vietnē /var/log/faillog, faktiski ir paredzēts parsēšanai un parādīšanai faila žurnāla komandai. Piemēram, lai izdrukātu pēdējās pieteikšanās kļūmes, izmantojiet šo:

faillog

Pēdējo pieteikšanos žurnāls

Pēdējais pieteikšanās žurnāls /var/log/lastlog parasti nav jāparsē un jāpārbauda cilvēkiem, bet gan tas ir jāizmanto kopā ar komandu lastlog. Piemēram, lai redzētu pieteikšanās sarakstu ar komandu lastlog, kas parādīta viena lapa katrā ekrānā ar komandu mazāk, izmantojiet šo komandu:

lastlog | mazāk

Pieteikšanās ierakstu žurnāls

Fails /var/log/wtmp satur pieteikšanās ierakstus, taču atšķirībā no iepriekš minētā /var/log/lastlog fails /var/log/wtmp netiek izmantots, lai parādītu neseno pieteikšanās gadījumu sarakstu, bet to izmanto citas utilītas, piemēram, who. komandu, lai parādītu pašlaik pieteikušos lietotāju sarakstu. Šī komanda parādīs lietotājus, kuri pašlaik ir pieteikušies jūsu datorā:

PVO

Sistēmas reģistrēšanas dēmons (syslogd)

Sistēmas reģistrēšanas dēmons syslogd , kas pazīstams arī kā sysklogd , gaida reģistrēšanas ziņojumus no daudziem avotiem un novirza ziņojumus uz atbilstošo failu vai tīkla galamērķi. Ziņojumos, kas reģistrēti sistēmā syslogd, papildus konkrētajai žurnāla informācijai parasti ir ietverti tādi vispārīgi elementi kā sistēmas resursdatora nosaukumi un laika zīmogi.

Syslogd konfigurācija

Syslogd dēmona konfigurācijas fails ir /etc/syslog.conf . Katrs ieraksts šajā failā sastāv no diviem laukiem, atlasītāja un darbības. Atlasītāja lauks norāda iekārtu, kas jāreģistrē, piemēram, aut iekārta, kas nodarbojas ar autorizāciju, un prioritātes līmenis šādas informācijas reģistrēšanai, piemēram, info, vai brīdinājums. Darbības lauks sastāv no žurnāla informācijas mērķa, piemēram, standarta žurnālfaila (t.i., /var/log/syslog) vai attālā datora resursdatora nosaukuma, uz kuru jānosūta žurnāla informācija.

Atbalso ziņojumus uz syslogd, izmantojot Logger

Reģistrētāja rīkā ir vienkārša utilīta, kas ļauj patvaļīgi ievietot ziņojumus sistēmas žurnālā (t.i., /var/log/syslog). Piemēram, pieņemsim, ka jūsu lietotājvārds ir buddha , un jūs vēlaties ievadīt ziņojumu sistēmas žurnālā par īpaši gardu picu, ko ēdat, termināļa uzvednē varat izmantot šādu komandu:

logger Šī pica no Vinnys Gourmet Rocks

un jūs beigtos ar rindiņu /var/log/syslog failā, piemēram:

12. janvāris 23:34:45 vietējais saimnieks buddha: šī pica no Vinnys Gourmet Rocks

Varat pat norādīt tagu, no kura nāk ziņojumi, un novirzīt arī izvades standarta kļūdu.

# # paraugs reģistrētāja kļūdas jive # logmsg="/usr/bin/logger -s -t MyScript " # paziņot, kas ir šis skripts, pat uz žurnālu $logmsg "Directory Checker FooScript Jive 1.0" # pārbaudiet Freda esamību" s mājas direktorijs šajā mašīnā, ja [ -d /home/fred]; tad $logmsg "I. Freda mājas direktorijs Atrasts" else $logmsg "E. Freda mājas direktorijs NEtika atrasts. "Boo Hoo." izeja 1 fi

Izpildot šo skriptu kā chkdir.sh uz mašīnas, kur Fredam nav mājas direktorijas /home/fred , tiek iegūti šādi rezultāti:

bumpy@butters:~$./chkdir.sh MyScript: Directory Checker FooScript Jive 1.0 MyScript: E. Freda mājas direktorijs NAV Atrasts. Boo Hoo. bumpy@butters:~$tail -n 2 /var/log/syslog 12. janvāris 23:23:11 vietējais resursdators MyScript: direktoriju pārbaudītājs FooScript Jive 1.0 12. janvāris 23:23:11 vietējais resursdators MyScript: E. Freda mājas direktorijs NAV Atrasts. Boo Hoo.

Tātad, kā redzat, mēs saņēmām ziņojumus gan standarta kļūdas veidā, termināļa uzvednē, gan tie parādās arī mūsu sistēmas žurnālā.

Baļķu rotācija

Skatot direktoriju sarakstus mapē /var/log vai kādā no tā apakšdirektorijām, var rasties žurnālfaili ar tādiem nosaukumiem kā daemon.log.0 , daemon.log.1.gz un tā tālāk. Kas ir šie žurnālfaili? Tie ir "pagriezti" žurnālfaili. Tas nozīmē, ka tie ir automātiski pārdēvēti pēc iepriekš noteikta laika perioda, un tika sākts jauns sākotnējais žurnāls. Pēc vēl ilgāka laika žurnālfaili tiek saspiesti ar utilītu gzip, kā tas ir piemērā daemon.log.1.gz. Žurnālu rotācijas mērķis ir arhivēt un saspiest vecos žurnālus, lai tie patērētu mazāk vietas diskā, bet pēc vajadzības joprojām būtu pieejami pārbaudei. Kas apstrādā šo funkcionalitāti? Protams, logrotate komanda! Parasti logrotate tiek izsaukts no visas sistēmas cron skripta /etc/cron.daily/logrotate, un to tālāk definē konfigurācijas fails /etc/logrotate.conf. Atsevišķus konfigurācijas failus var pievienot /etc/logrotate.d (kur, piemēram, tiek glabātas apache2 un mysql konfigurācijas).

Šajā rokasgrāmatā nav apskatīti neskaitāmi veidi, kā logrotate var konfigurēt, lai apstrādātu jebkura žurnālfaila automātisku rotāciju jūsu Ubuntu sistēmā. Lai iegūtu sīkāku informāciju, pārbaudiet Resursišīs rokasgrāmatas sadaļā.

PIEZĪME: Varat arī pagriezt sistēmas žurnālfailus, izmantojot skriptu cron.daily /etc/cron.daily/sysklogd, nevis logrotate. Faktiski utilīta saglabāšanas žurnāls var radīt negaidītus žurnāla rotācijas rezultātus, kurus, šķiet, logrotate konfigurēšana neietekmē. Šādos gadījumos pārbaudiet cron.daily sysklogd skriptu mapē /etc/cron.daily/sysklogd un izlasiet saglabāšanas žurnāla rokasgrāmatas lapu, lai redzētu, vai saglabāšanas žurnāls patiesībā neveic rotāciju veidā, kas nav tas, ko norādāt ar logrotēt.

Būtiskās komandas

Ja esat iesācējs konsolē un Linux komandrindā, šīs komandas ļaus jums sākt darbu līdz vietai, kurā varēsit strādāt ar žurnālfailiem pamata līmenī.

Darba sākšana

Lai pārslēgtos uz žurnāla direktoriju, kurā atrodas lielākā daļa šo failu, izmantojiet komandu cd. Tādējādi katrai nākamajai komandai nav jāievada pilns ceļa nosaukums:

cd /var/log

Failu rediģēšana

Failus var skatīt un rediģēt programmā GEdit vai Kate — vienkāršajos teksta redaktoros, kas nāk attiecīgi kopā ar Ubuntu un Kubuntu, taču tie var būt pārspīlēti, ja vēlaties tikai apskatīt failu vai veikt vienkāršas izmaiņas. Vienkāršākais redaktors, ko izmantot no konsoles, ir nano, kas ir mazāk jaudīgs, taču arī mazāk sarežģīts nekā vim vai emacs. Komanda, lai rediģētu noteiktu žurnālfailu /var/log/example.log, izmantojot nano, ir:

nano piemērs.log

Nospiediet Ctrl+X, lai izietu. Izejot, tiks jautāts, vai vēlaties saglabāt izmaiņas, taču, ja vien nepalaižat to ar komandu sudo, failus nevarēs rakstīt. Parasti jūs, protams, nevēlaties saglabāt izmaiņas žurnālfailos.

Failu skatīšana

Lai vienkārši apskatītu failu, redaktors ir pārspīlēts. Izmantojiet komandu less, kas pa vienam ekrānam pārvērš failu:

mazāk example.log

Lai skatītu failu, nav nepieciešams sudo. Nospiediet h, lai saņemtu palīdzību, vai q, lai aizvērtu. Kursora taustiņi un lapas augšup/uz leju taustiņi darbosies, kā paredzēts, un slīpsvītras taustiņš ("/") izmantos reģistru. sensitīva meklēšana; taustiņš n atkārto pēdējo meklēšanu.

Failu sākuma skatīšana

Lai redzētu pirmās desmit faila rindiņas, izmantojiet komandu head:

galvas piemērs.log

Lai skatītu citu rindu skaitu no faila sākuma, pievienojiet slēdzi -n, tādējādi:

head -n 20 example.log

Failu beigu apskate

Lai redzētu pēdējās desmit faila rindiņas, analogā komanda ir tail:

astes piemērs.log

Atkal, slēdzis -n ļauj kontrolēt, cik rindu tas parāda:

asti -n 20 example.log

Mainīga faila skatīšanās

Arī slēdzis -f ("sekot") ievieto cilpu, pastāvīgi gaidot jaunus papildinājumus failam, ko tas parāda. Tas ir noderīgi, lai pārraudzītu failus, kas tiek atjaunināti reāllaikā:

aste -f example.log

Nospiediet Ctrl+C, lai aizvērtu cilpu.

Failu meklēšana

Tā kā žurnālfaili var būt lieli un smagnēji, tas palīdz koncentrēties. Komanda grep palīdz noņemt tikai jums svarīgu saturu. Piemēram, lai atrastu visas rindiņas failā, kurā ir vārds "sistēma", izmantojiet šo:

grep "sistēma" example.log

Lai atrastu visas rindas, kurās rindas sākumā ir "sistēma", izmantojiet šo:

grep "^system" example.log

Ievērojiet caret simbolu — regulāru izteiksmi, kas atbilst tikai rindas sākumam. Tas ir mazāk noderīgi standarta žurnālfailiem, kas vienmēr sākas ar datumu un laiku, taču citādi tas var būt noderīgi. Ne visiem failiem ir standarta formāts.

Ikreiz, kad grep rezultāts joprojām ir pārāk garš, varat to izmantot mazāk:

grep "sistēma" example.log | mazāk

Resursi

Papildinformācija par sistēmas un lietojumprogrammu žurnāliem un syslogd ir pieejama, izmantojot šādus resursus:

Vietējie sistēmas resursi

Sistēmas rokasgrāmatas lapa dmesg kodola gredzena bufera utilītai

Sistēmas rokasgrāmatas lapa faila žurnāla komandai (un arī faila žurnāla konfigurācijas failam, izmantojot man 5 faillog)

Sistēmas rokasgrāmatas lapa grep raksta meklēšanas utilītai

Sistēmas rokasgrāmatas lapa galvas utilītai

Sistēmas rokasgrāmatas lapa kodola žurnāla dēmonam (klogd)

Sistēmas rokasgrāmata pēdējai komandai, kas parāda pēdējos pieteikušos lietotājus

Sistēmas rokasgrāmatas lapa mazākai peidžeru utilītai

Sistēmas rokasgrāmatas lapa reģistratora komandrindas saskarnei ar syslog utilītu

Sistēmas rokasgrāmatas lapa logrotate utilītai

Sistēmas rokasgrāmatas lapa saglabāšanas žurnāla faila saglabāšanas utilītai

Sistēmas rokasgrāmatas lapa sistēmas žurnāla dēmonam (syslogd)

Sistēmas rokasgrāmatas lapa syslogd konfigurācijas failam

Sistēmas rokasgrāmatas lapa astes utilītai


Skatot žurnālfailus (žurnāla failus) operētājsistēmā Linux, dažreiz jums ir jāuzrauga jauni žurnāla ieraksti reāllaikā. Tas nozīmē, ka jūs norādāt, kuru žurnālfailu (vai failus) vēlaties skatīt un reāllaikā pārraudzīt, vai šajā failā nav jaunu ierakstu.

Žurnālu failu pārraudzība ar asti komandu

Ja palaižat komandu tailFileName bez papildu argumentiem tiks izdrukātas pēdējās 10 faila rindiņas un komanda pabeigs savu darbu.

Lai astes komanda nepārtraukti izvadītu pēdējās notis failā, tas ir, ja failā parādījās jauni ieraksti, ekrānā redzamā informācija tika atjaunināta, tiek izmantota opcija -f:
tail -f LogFileName

Palaidiet komandu tail -f, lai izvadītu žurnālfailu /var/log/syslog

asti -f /var/log/syslog

Tā kā tiek izmantota opcija -f , astes komanda nepabeidz savu darbu, bet gaida, kad žurnāla failā parādīsies jauni ieraksti. Tiklīdz žurnālfailam tiks pievienoti jauni ieraksti, tie nekavējoties tiks parādīti terminālī.

Lai pārtrauktu komandas izpildi, nospiediet īsinājumtaustiņu Ctrl+C

astes komanda

Komanda tail-f ir līdzvērtīga tailf komandai.

Lietošana:

Tailf /var/log/mylogfile.log

Būtiska atšķirība starp komandu tailf un tail -f ir tā, ka tailf nepiekļūst failam, ja tas nav modificēts. Tā rezultātā faila piekļuves laiks netiek atjaunināts un sistēma nepārtraukti neizskalo failu diskā, kad fails netiek atjaunināts.

Tailf komandas apraksts norāda, ka tā ir noderīga klēpjdatoru žurnālfailu uzraudzībai. Tā kā diskam netiek nevajadzīgi piekļūts un tiek saglabāts akumulatora darbības laiks.

aste -F. Ja fails ir pārdēvēts vai izdzēsts

Parasti operētājsistēmā Linux žurnāla faili netiek rakstīti bezgalīgi, pretējā gadījumā šāda faila izmantošana nākotnē būtu ļoti neērta. Tā vietā tiek izmantota tā sauktā failu pagriešana. Kad žurnālfails kļūst liels, tas tiek dzēsts vai pārdēvēts (tiek izveidota faila rezerves kopija), un turpmākie ziņojumi tiek rakstīti jaunā, tukšā failā.

Astes komandai ir divas iespējas: -f un -F

  • Ja lieto opcija -f un izsekotais fails tiek pārdēvēts, astes komanda turpina izsekot jau pārdēvētajam failam. Komanda astišajā gadījumā tas ir saistīts ar faila identifikatoru (inode).
  • Ja lieto opcija -F un izsekotais fails tiek pārdēvēts, astes komanda to atklās un tiklīdz tiks izveidots jauns žurnālfails (ar nosaukumu, ko norādījām komandai asti), komanda asti sāks izsekot šim jaunajam failam.

Apskatīsim piemēru.

Mēs pārraudzīsim žurnālfailu /var/log/apache2/error.log. Izpildiet astes komandu ar opciju -F

Aste -F /var/log/apache2/error.log

Ja sistēma pārvieto (pārdēvē) failu error.log uz error.log.1 un izveido jaunu error.log failu, mūsu komanda tail turpinās uzraudzīt jauno error.log failu.

Ja mēs izmantotu opciju šajā piemērā -f , tad tail komanda turpinātu uzraudzīt error.log.1 failu, kas mums vairs nav aktuāls, skatot žurnālus reāllaikā.

Pārraugiet vairākus žurnālfailus vienlaikus

Astes komanda atbalsta vairāku failu izsekošanu vienlaikus. Lai to izdarītu, ir jānorāda failu nosaukumi, atdalot tos ar atstarpēm.

Tail -f /var/log/apache2/error.log /var/log/apache2/access.log

Tiklīdz kāds no failiem mainās, ekrānā tiek parādīts šī faila nosaukums un jaunie ieraksti tajā.

Vairāku žurnālfailu vienlaicīgai uzraudzībai ir ļoti ērta multitail utilīta

Tas ne tikai parāda datus, bet arī izveido savu logu (apgabalu) katram failam un parāda datus šajā logā. Ar tās palīdzību ir ļoti ērti izsekot daudziem žurnālfailiem vienlaikus un redzēt tos vienā termināļa logā.

Multitail utilītu var instalēt no jūsu izplatīšanas standarta krātuvēm. Lai instalētu, palaidiet komandu (atlasiet savam izplatīšanai atbilstošo komandu):

Sudo apt install multitail sudo yum install multitail sudo dnf install multitail

Lietošana:

Multitail /var/log/apache2/access.log /var/log/apache2/error.log

Lai izietu no utilīta, nospiediet taustiņu q

Visi žurnālfaili atrodas direktorijā /var/log. Šajā direktorijā katram žurnālu veidam ir īpaši faili. Piemēram, sistēmas žurnāli, piemēram, kodola darbības, tiek reģistrēti syslog failā.

Daži no visbiežāk sastopamajiem žurnālfailiem šajā direktorijā ir:

    Direktorijā apt ir fails history.log, kas saglabā visu pakotnes instalēšanas un noņemšanas informāciju pat sākotnējās sistēmas izveides laikā kā Live CD. Varat atvērt šo failu, lai redzētu šo ļoti interesanto failu.

    Direktorijā dist-upgrade ir fails apt.log, kas reģistrē informāciju izplatīšanas jaunināšanas laikā

    Direktoriju instalētājā var atrast žurnālfailus, kas tiek izveidoti instalēšanas laikā.

    Ir fails apport.log, kas saglabā informāciju par jūsu sistēmas avārijām un ziņo par tām.

    Failā auth.log ir ietverta informācija par autentifikācijas darbībām, piemēram, kad autentificējaties kā root lietotājs, izmantojot sudo.

    Fails dpkg.log saglabā zema līmeņa informāciju par pakotņu instalēšanu un noņemšanu saistībā ar dpkg. Jūs, iespējams, zināt, ka apt sistēma pakotnes instalēšanai un noņemšanai ir atkarīga no dpkg.

    boot.log ietver informāciju par katru sāknēšanu.

    kern.log saglabā kodola informāciju, piemēram, brīdinājumus, kļūdas utt.

    alternatives.log ietver visu dažādu pakotņu iestatīto alternatīvu vēsturi un to noņemšanu, izmantojot komandu update-alternatives.

    Vēl viens svarīgs žurnālfails ir Xorg.log, kas ietver informāciju par grafikas draiveri, tā kļūmēm, brīdinājumiem utt.

Atkarībā no instalētajām pakotnēm tur var būt daži citi žurnālfailu veidi. Piemēram, Mana sistēma ietver arī žurnālfailus epoptes.log, kas būs tur tikai tad, ja instalējat epoptes pakotni.

Izmaiņas pēc systemd

Līdz ar systemd parādīšanos reģistrēšanu pārsvarā apstrādā utilīta Journalctl, un žurnāli tiek glabāti binārā formātā failā /var/lib/systemd/catalog/database. Šajā failā ir uzskaitīti visi žurnāli, tostarp kodola, sāknēšanas un lietojumprogrammu žurnāli, un tiek nodrošināti nepieciešamie žurnāli, izmantojot utilītu Journalctl.

Šeit ir labs raksts par Journalctl par to, kā to izmantot, lai iegūtu nepieciešamo žurnāla informāciju.

Savas darbības laikā sistēma uzrauga un īpašos failos saglabā dažus notikumus, kurus tā uzskata par svarīgiem vai vienkārši nepieciešamiem lietošanai, lai labotu un atkļūdotu kļūdas, bojātas konfigurācijas utt. Faili, kuros šie notikumi tiek glabāti, tiek saukti par žurnālfailiem vai reģistrāciju. faili. Bieži vien reģistrēšanas faili aizņem pārāk daudz vietas diskā, kas var norādīt uz sistēmas darbības traucējumiem, konfigurācijas kļūdām vai vienkārši nepareizu notikumu reģistrēšanas dēmonu konfigurāciju, kas uzrauga un apkopo visu. Tādējādi darbs ar notikumu reģistrācijas sistēmu ir svarīga sastāvdaļa jebkura sistēmas administratora darbā, no kā pilnībā ir atkarīga sistēmas apkalpošanas kvalitāte un līdz ar to arī to uzticamība un izturība.

Kā darbojas pasākumu reģistrācijas sistēma?

Pieredzējuši sistēmu administratori zina, ka ir nepieciešams regulāri un īpaši rūpīgi pārskatīt un analizēt reģistrācijas žurnālus (failus). Žurnālos ietvertā informācija bieži palīdz ātri atrisināt problēmas vai identificēt slēptās problēmas sistēmas konfigurācijā. Lai sistēma izsekotu notikumus, pārbaudītu žurnālus, ierakstītu, uzglabātu, arhivētu un dzēstu informāciju no šiem žurnāliem, ir jāizstrādā un jāapstiprina īpaši noteikumi organizācijai, kas darbojas un/vai uztur sistēmas, serverus un tīklus.

Galvenais notikumu reģistrēšanas rīks UNIX un Linu joprojām paliek syslogd dēmons Syslog sistēmas. Taču jāpatur prātā arī tas, ka ilgu laiku dažādu UNIX atzaru daudzveidības un Linux versijas Daudzas programmatūras pakotnes, pakalpojumu skripti un tīkla dēmoni izmanto savus žurnālus, dažreiz eksotiskus formātus.

Parasti Syslog sistēma (un citas specializētās programmas) pārtver uzraudzīto notikumu un reģistrē to žurnālfailā. Pats reģistrētais notikums ir teksta rindiņa, kurā ir dati par notikuma datumu/laiku, veidu un nopietnību. Atkarībā no situācijas šajā komplektā var būt iekļauti arī citi dati. Pati reģistrētā notikuma rinda tiek sadalīta ar norobežojošām rakstzīmēm: atstarpēm, tabulēšanas zīmēm un pieturzīmēm, lai izceltu norādītos komponentus.

Žurnāli ir viegli apskatāmi, jo tie ir regulāri teksta faili. Priekš efektīvs darbs ar žurnāliem visvairāk standarta instrumenti no jebkura izplatīšanas pamata izplatīšanas - komandas un . Ja jums ir nepieciešams ķemmēt ļoti lielus un sarežģītus žurnālus, varat (un pat nepieciešams) grep utilīta vietā izmantot citu rīku, kas ir daudz produktīvāks un elastīgāks šādos uzdevumos - . Tam ļoti labi piemērota arī teksta apstrādes valoda Perl.

Tipisks Syslog sistēmas žurnāla ieraksts parasti izskatās šādi:

18. decembris 15:12:42 backup.main.superhosting.ru sbatchd: sbatchd/main: ls_info() neizdevās: LIM nedarbojas; mēģiniet vēlāk; mēģina ... Dec 18 15:14:28 system.main.superhosting.ru pop-proxy: Savienojums no 186.115.198.84 Dec 18 15:14:30 control.main.superhosting.ru pingem : office.main.superhosting.ru nav atbildējis 42 reizes 18. decembris 15:15:05 service.main.superhosting.ru vmunix: Vairāki softerrors: Redzēti 100Labotas softerrors from SIMM J0201 Dec 18 15:15:16 backup.main.superhosting.ru (PAM_hdunix) slēgts "lietotāju tendencei

Šajā gadījumā var redzēt, ka vienā no Syslog žurnāliem ir notikumi no vairākiem avotiem: sbathd, pingem, pop-proxy programmām. Varat arī redzēt, ka notikumi tiek reģistrēti vairākiem saimniekiem, kas mijiedarbojas ar šo sistēmu: dublējums, sistēma, birojs un pakalpojums.

žurnālfaili un to atrašanās vieta Linux

Kā jau minēts, in UNIX sistēmas un Linux nav skaidru konvenciju par to, kur un kā žurnāli ir jāuzglabā. Tie var būt izkaisīti pa visu failu sistēmu, tāpēc katram administratoram ir svarīgi uzreiz saprast, kur un kurām pakotnēm un dēmoniem atrodas attiecīgie žurnālfaili. Bet, neskatoties uz skaidru formālu noteikumu trūkumu attiecībā uz žurnālu glabāšanas vietu, joprojām pastāv tradicionāls noteikums, ka šiem failiem jāatrodas /var/log, /var/log/syslog un arī /var/adm direktorijās.

Parasti tikai superlietotājam tiek piešķirta piekļuve failu lasīšanai noteiktajos direktorijos, taču nav nekas slikts, iestatot “demokrātiskāku” piekļuves režīmu bieži skatītiem žurnāliem, kuros arī nav svarīgas sistēmas informācijas. Parasti šī opcija tiek izmantota arī ērtībai un laika taupīšanai, kad jums bieži un regulāri jāpārbauda daži žurnāli, piemēram, Apache tīmekļa serverim, kas parasti atrodas /var/log/apache2 vai /var/log/httpd. .

Ir arī vērts atcerēties, ka ir gadījumi, kad (īpaši bojātu konfigurāciju gadījumā) kopējais žurnālfailu apjoms strauji palielinās, un pastāv augsts sistēmas avārijas risks. Lai atvieglotu atmiņas ierīču brīvās vietas uzraudzību, kā arī lai nodrošinātu uzticamību, direktorijs /var bieži tiek ievietots atsevišķā failu sistēma atsevišķā sadaļā.

Daži īpaši žurnālfaili

Šajā tabulā ir sniegta informācija par dažiem žurnālfailiem, no kuriem iegūtā informācija ir ļoti noderīga sistēmas administrēšanai:

Fails Programma Vieta Biežums Sistēmas Mērķis
skābs skābs F 64k RZ Energosistēmas notikumi
auth.log sudo un citi S M U Autorizācijas informācija
apache2/* httpd vai apache2 F D ZU Apache tīmekļa servera žurnāli
piemērots* APT F M U Pakešu uzstādītāji
boot.log Palaidiet skriptus F M R Palaidiet skriptu žurnālus
boot.msg Kodols IN - Z Kodola ziņojumu bufera attēls
cron cron S N RAH Žurnāli un informācija par cron dēmonu
krūzes/* KAUZES F N ZRU Ziņojumi, kas saistīti ar drukas sistēmu
daemon.log Dažādi S N U Dēmonu rīka ziņojumi
atkļūdošana Dažādi S D U Ziņojumu atkļūdošana
dmesg Kodols IN - RU Kodola ziņojumu bufera attēls
dpkg.log dpkg F M U Pakešu uzstādītāji
faillog Pieslēgties N N RZU Informācija par neveiksmīgiem autorizācijas mēģinājumiem
apache2/* HTTPd vai apache2 F D R Apache tīmekļa servera žurnāli direktorijai /etc
kern.log Pieslēgties IN - RZ Visi kodola rīka ziņojumi
pēdējais žurnāls Pieslēgties IN - RZ Katra lietotāja pēdējā pieteikšanās laiks (šis fails ir binārs)
pasts* E-pasta programmas S N Visi Elektroniskie sakari
ziņas Dažādi S N RZUS
rpmpkgs cron.ikdienas IN D R Instalēto RPM pakotņu saraksts
samba/* smbd un citi F N - Informācija par Samba serveri
drošs sshd un citi S M R Konfidenciāli autorizācijas ziņojumi
sulog su F - SAH Informācija par veiksmīgiem un neveiksmīgiem mēģinājumiem izmantot komandu su
syslog* Dažādi S H SUH Galvenais sistēmas žurnālfails
brīdināt wpar S H Z Sistēmas brīdinājuma/kļūdu līmeņa notikumi
wpars/* wpar F - A Sāknēšanas nodalījuma notikumu informācija
wtmp Pieslēgties IN M Visi Sistēmas reģistrācijas ziņojumi (binārais fails)
xen/* Ksens F 1 m RZU Informācija no Xen virtuālās mašīnas monitora
Xorg.n.log Xorg F N R.S. X Windows Server kļūdu ziņojumi
yum.log nam! F M R Pakešu pārvaldības žurnāls

Uz šo tabulu attiecas šādi apzīmējumi: S — Syslog, B — iebūvētais nosaukums, F — konfigurācijas fails, D — katru dienu, N — katru nedēļu, M — katru mēnesi, NN — izmērs kilobaitos vai megabaitos, Z — SUSE, R Red Hat un CentOS, S - Solaris, H - HP-UX, A - AIX. Kolonnā Biežums ir norādīts, cik bieži tiek dzēsta novecojusi informācija, kas saistīta ar laiku vai faila lielumu. Kolonnā Programma ir norādīta programma, kas izveidoja failu.

Jāņem vērā arī tas, ka lielākā daļa ziņojumu par tabulā parādītajiem failiem tiek nosūtīti uz Syslog sistēmu. Smaguma pakāpe un programma, kas izveido failu, ir norādīta /etc/initlog.conf konfigurācijas failā. - šādi darbojas Syslog sistēma. Faillog fails ir binārs, un tāpēc to var nolasīt failog utilīta.

Ja atrodat kļūdu, lūdzu, iezīmējiet teksta daļu un noklikšķiniet Ctrl+Enter.