Када се суочите са било каквим проблемима са перформансама вашег сервера, прва ствар коју желите да урадите је да проверите своје Линук дневнике. У системској евиденцији можете пронаћи неке корисне дијагностичке поруке из различитих компоненти оперативног система попут кернела или разних услуга, тако да ћете највероватније тамо пронаћи узрок квара.
Свака порука у дневнику се генерише као резултат одређених догађаја у оперативном систему: од корисника, ауторизације до гашења сервиса или отказивања апликације. Ови догађаји имају различите приоритете у зависности од тога колико су критични. У Линук-у постоје следеће врсте догађаја:
emerg- неуспех, највиши приоритет;alert- хитно упозорење;crit- критични догађај;err- обична грешка;warn- обично упозорење;notice- обавештење;info- информативна порука;debug- информације о отклањању грешака;
У овом тренутку, главне услуге прикупљања дневника у Линуку су рсислог системд-јоурналд. Они иду уз већину модерних дистрибутивних пакета и раде независно.
рсислог
Дневници ове услуге се налазе у „/ вар / лог /” фолдер у облику обичних текстуалних датотека. Лог поруке се стављају у различите датотеке у зависности од типа догађаја. На пример, „/вар/лог/аутх.лог” садржи информације о ауторизацији корисника у систему, и “/вар/лог/керн.лог” садржи поруке кернела. Имена датотека се могу разликовати у зависности од дистрибутивних пакета, па хајде да погледамо конфигурациони фајл да бисмо стекли представу о томе где се налази „/етц/рсислог.д/50-дефаулт.цонф".
Ова правила приказују која датотека садржи сваки тип порука дневника. Леви део приказује тип поруке у следећем облику „[Извор].[Приоритет]” а у десном делу се приказује назив датотеке евиденције. Приликом писања типа поруке „*" може се додати знак. То значи празну вредност или "ниједан” што га уклања са листе. Хајде да ближе погледамо прва два правила.
“auth,authpriv.* /var/log/auth.log”
“*.*;auth,authpriv.none -/var/log/syslog”
Прво правило значи да ће све поруке примљене од механизма ауторизације бити снимљене у „/вар/лог/аутх.лог” фајл. Сви покушаји ауторизације (и успешни и не) биће регистровани у овој датотеци. Друго правило указује да ће све поруке осим оних које су повезане са ауторизацијом бити снимљене у „/ вар / лог / сислог” фајл. Ове две датотеке су обично најпопуларније. Следећа правила дефинишу путању за чување евиденције кернела “керн.*” и евиденције услуга поште “пошта.*"
Датотеке евиденције се могу отворити уз помоћ било ког уређивача текста, нпр manje, како, реп. Хајде да отворимо „/вар/лог/аутх.лог” фајл
less /var/log/auth.log
Сваки ред датотеке је посебна порука примљена од апликације или услуге. Све поруке без обзира на њихов извор имају један формат и састоје се од 5 делова. Узмимо за пример истакнуту поруку на снимку екрана.
- Временска ознака поруке - „12. фебруар 06:18:33“
- Назив рачунара који је послао поруку - „вдс“
- Назив апликације или услуге која је послала поруку - „ссхд“
- ИД процеса - [653]
- Текст поруке - “Прихваћена лозинка за михаил са 188.19.42.165 порт 2849 ссх2”
Ово је био пример успешне везе са ССХ-ом.
А ево како изгледа неуспешан покушај пријаве:
Ова датотека такође бележи команде са напредним дозволама
Хајде да отворимо / вар / лог / сислог фајл
Истакнута порука на снимку екрана је порука о гашењу мрежног интерфејса.
За тражење информација кроз дугачке текстуалне датотеке користите греп корисност. Можете пронаћи све поруке примљене од пптпд услуга у „/ вар / лог / сислог” фајл.
grep 'pptpd' /var/log/syslog
Током дијагностике можете користити реп услужни програм који може да прикаже неколико последњих линија датотека. команда "таил -ф / вар / лог / сислог” ће вам омогућити да гледате записе дневника у реалном времену.
Сервис рсислог је веома флексибилан и моћан. Може се користити за прикупљање трупаца у локалним системима као и на нивоу предузећа. Комплетну документацију можете пронаћи на званичном сајту https://www.rsyslog.com/
Ротација дневника у Линуку
Снимање дневника се одвија континуирано, тако да величина датотека стално расте. Механизам ротације обезбеђује аутоматско архивирање старих дневника и креирање нових датотека. У зависности од правила, то се може десити дневно, недељно, месечно или према ограничењу величине. Како се креирају нови дневники, стари се могу само избрисати или послати е-поштом. Ротацију дневника врши постићи корисност. Главну конфигурацију можете пронаћи у „/етц/логротате.цонф” фајл. Садржај датотека се такође обрађује у „/етц/логротате.д/”Фолдер
Нова правила се могу пријавити у главну конфигурациону датотеку. Међутим, најбоље је да направите засебну датотеку у „/етц/логротате.д/“. Подразумевано, постоји неколико датотека у овом директоријуму
Хајде да погледамо датотеку “/етц/логротате.д/рсислог" који садржи правила ротације за дневнике рсислог сервис.
Прво, правило треба да садржи путању до датотеке евиденције, а затим све смернице у закривљеним заградама.
- ротирати 7 - број фајлова за чување - 7
- дневно - креирајте нову датотеку сваки дан
- сабити - компримујте и архивирајте старе датотеке
На снимку екрана можете видети да у „/ вар / лог /” фолдер тамо је главни дневник “сислог” и 7 архива, што одговара правилима у конфигурационој датотеци.
Детаљнији опис логротате можете пронаћи у приручнику, извршавајући „човек логротате” команда
Прикупљање Линук дневника - дневник
Услуга сече трупаца системд-јоурналд је део иницијализационог система системд. Линук датотеке евиденције се чувају у „/вар/лог/јоурнал/” у посебном формату и може се отворити уз помоћ јоурналцтл корисност. Формат записа је потпуно исти као у рсислог.
команда јоурналцтл без атрибута приказује све записе, али није погодан за веће евиденције. Хајде да погледамо неке опције овог услужног програма.
journalctl -b- прикажи све записе од последњег стартаjournalctl -S "2020-02-17 12:00" -U "2020-02-17 12:10"- приказати запис у одређеном временском периодуjournalctl -u pptpd- приказати евиденцију одређене услугеjournalctl -k- прикажи поруке кернелаjournalctl -p err- прикажи поруке одређеног приоритета, поруке вишег приоритета у овом случају (критична, упозорење, појављивање)journalctl -f- прикажите поруке у реалном времену
За бољу флексибилност можете комбиновати ове опције. Хајде да покажемо све грешке пптпд сервис
journalctl -u pptpd -p err
Ако наведете путању до извршне датотеке као атрибут, услужни програм ће приказати све поруке које шаље ова датотека. Хајде да прикажемо све поруке које шаље датотека “/уср/бин/судо” од 04:15 18. фебруара 2020. У ствари, приказаће све команде извршене са вишим дозволама.
journalctl -S "2020-02-18 04:15" /usr/bin/sudo
Да бисте сазнали колико је простора на диску потребно за извршавање следеће команде
journalctl --disk-usage
Да бисте ограничили датотеку евиденције на 1Гб, извршите следећу команду
journalctl --vacuum-size=1G
Отварање бинарних датотека
Хајде сада да погледамо неке посебне датотеке у „/ вар / лог /” фолдер у којем се чувају сви покушаји пријаве. Ове датотеке су бинарне и могу се отворити само посебним програмима.
/вар/лог/втмп садржи информације о успешним покушајима пријаве. Користите последњи услужни програм да га отворите.
/вар/лог/бтмп - садржи све неуспеле покушаје пријаве. Може се отворити са ластб са напредним дозволама. Атрибут -n дефинише број линија приказаних од краја датотеке.
/вар/лог/ластлог - садржи време последње акције пријављивања за сваки запис налога. Може се отворити са ластлог