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ākDē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ākVai, piemēram, lai meklētu rindas, kurās ir pieminēta sistēma Plug & Play, izmantojiet grep, piemēram:
dmesg | grep pnp | mazākPē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:
faillogPē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ākPieteikš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ā:
PVOSistē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 RocksVarat 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 fiIzpildot š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/logFailu 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.logLai 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.logAtkal, 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.logNospiediet 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.logLai atrastu visas rindas, kurās rindas sākumā ir "sistēma", izmantojiet šo:
grep "^system" example.logIevē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ākResursi
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.