Сервериңиздин иштеши менен кандайдыр бир көйгөйлөргө туш болгондо, эң биринчи кыла турган нерсе - бул Linux журналдарыңызды текшериңиз. Тутум журналында сиз ядро же ар кандай кызматтар сыяктуу операциялык системанын ар кандай компоненттеринен пайдалуу диагностикалык билдирүүлөрдү таба аласыз, андыктан катанын себебин ошол жерден таба аласыз.
Журналдагы ар бир билдирүү операциялык тутумдагы белгилүү окуялардын натыйжасында түзүлөт: колдонуучудан, авторизациядан кызматтын өчүрүлүшүнө чейин же колдонмонун бузулушуна чейин. Бул окуялар канчалык критикалык экендигине жараша ар кандай артыкчылыктарга ээ. Linuxто окуялардын төмөнкү түрлөрү бар:
emerg- ийгиликсиздик, эң жогорку артыкчылык;alert- шашылыш эскертүү;crit- критикалык окуя;err- кадимки ката;warn- кадимки эскертүү;notice- кабарлоо;info- маалыматтык билдирүү;debug- мүчүлүштүктөрдү оңдоо маалыматы;
Учурда Linux'та негизги журналдарды жыйноо кызматтары болуп саналат rsyslog жана systemd-журнал. Алар заманбап бөлүштүрүү пакеттеринин көбү менен барып, өз алдынча иштешет.
rsyslog
Бул кызматтын журналдары жайгашкан "/ var / log /"кадимки текст файлдары түрүндөгү папка. Журнал билдирүүлөрү окуянын түрүнө жараша ар кандай файлдарга салынат. Мисалы, "/var/log/auth.log” тутумдагы колдонуучулардын авторизациясы жөнүндө маалыматты камтыйт жана “/var/log/kern.log” өзөк билдирүүлөрүн камтыйт. Файлдардын аттары бөлүштүрүүчү топтомдордо ар кандай болушу мүмкүн, андыктан эмненин кайда экенин түшүнүү үчүн конфигурация файлын карап көрөлү “/etc/rsyslog.d/50-default.conf«.
Бул эрежелер журнал билдирүүлөрүнүн ар бир түрүн камтыган файлды көрсөтөт. Сол бөлүгү төмөнкү формада билдирүүнүн түрүн көрсөтөт "[Булак].[Артыкчылык]” жана оң бөлүк журнал файлынын атын көрсөтөт. Кабардын түрүн жазып жатканда “*” белгисин кошууга болот. Бул бош маанини же “эч ким” деп аны тизмеден алып салат. Келгиле, биринчи эки эрежени кененирээк карап чыгалы.
“auth,authpriv.* /var/log/auth.log”
“*.*;auth,authpriv.none -/var/log/syslog”
Биринчи эреже авторизация механизминен алынган бардык билдирүүлөр "/var/log/auth.log” файлы. Бардык авторизация аракеттери (ийгиликтүү да, ийгиликтүү да эмес) бул файлда катталат. Экинчи эреже авторизацияга байланышкан билдирүүлөрдөн башка бардык билдирүүлөр “/ var / log / syslog"файл. Бул эки файл көбүнчө эң популярдуу. Төмөнкү эрежелер ядро журналдарын сактоонун жолун аныктайт "керн.*"жана почта кызматынын журналдары"почта.*«
Журнал файлдары сыяктуу каалаган текст редакторунун жардамы менен ачылат азыраак, мышык, куйрук. Келгиле, ачалы/var/log/auth.log” файлы
less /var/log/auth.log
Файлдын ар бир сабы тиркемеден же кызматтан алынган өзүнчө билдирүү болуп саналат. Бардык билдирүүлөр булагына карабастан бир форматка ээ жана 5 бөлүктөн турат. Мисал катары скриншотто белгиленген билдирүүнү алалы.
- Кабардын убакыт белгиси - “12-февраль 06:18:33”
- Кабарды жөнөткөн компьютердин аты - "vds"
- Билдирүүнү жөнөткөн колдонмонун же кызматтын аталышы - "sshd"
- Процесс ID - [653]
- Билдирүүнүн тексти - "Mihail үчүн 188.19.42.165 портунан 2849 ssh2 үчүн кабыл алынган сырсөз"
Бул SSH менен ийгиликтүү туташуунун мисалы болгон.
Ийгиликсиз кирүү аракети төмөнкүдөй көрүнөт:
Бул файл ошондой эле өркүндөтүлгөн уруксаттары бар буйруктарды жазат
ачалы / var / log / syslog билэ
Скриншотто бөлүнгөн билдирүү - бул тармак интерфейсинин өчүрүлүшү жөнүндө билдирүү.
Узун текст файлдары аркылуу маалымат издөө үчүн талаасынын пайдалуу. Сиз алынган бардык билдирүүлөрдү таба аласыз pptpd кызмат "/ var / log / syslog” файлы.
grep 'pptpd' /var/log/syslog
Диагностика учурунда сиз колдоно аласыз куйрук Файлдардын бир нече акыркы саптарын көрсөтө турган утилита. Буйрук "tail -f / var / log / syslog” сизге реалдуу убакыт режиминде жазууларды көрүүгө мүмкүнчүлүк берет.
Кызмат rsyslog абдан ийкемдүү жана күчтүү. Аны жергиликтүү системаларда, ошондой эле ишкана деңгээлинде логдорду жыйноо үчүн колдонсо болот. Толук документтерди расмий сайттан таба аласыз https://www.rsyslog.com/
Linux'та журналдардын айлануусу
Журнал жазуусу үзгүлтүксүз жүрүп жатат, андыктан файлдардын көлөмү тынымсыз өсөт. Айлануу механизми эски журналдарды автоматтык түрдө архивдөө жана жаңы файлдарды түзүүнү камсыздайт. Эрежелерге жараша, ал күн сайын, жума сайын, ай сайын же өлчөмдөр боюнча болушу мүмкүн. Жаңы журналдар түзүлүп жатканда, эскилерди жөн эле жок кылса же электрондук почта аркылуу жөнөтсө болот. Журналдардын айлануусу тарабынан ишке ашырылат жетишилген пайдалуу. Негизги конфигурацияны "" бөлүмүнөн таба аласыз./etc/logrotate.conf” файлы. Файлдардын мазмуну “да да иштетилет./etc/logrotate.d/”Папкасы
Жаңы эрежелер негизги конфигурация файлына кирсе болот. Бирок, бул жерде өзүнчө файл түзүү жакшы./etc/logrotate.d/". Демейки боюнча, бул каталогдо бир нече файлдар бар
Келгиле, файлды карап көрөлү "/etc/logrotate.d/rsyslog", ал журналдар үчүн айлануу эрежелерин камтыйт rsyslog кызматы.
Биринчиден, эреже журнал файлына жолду камтышы керек, андан кийин ийри кашаалардын ичинде бардык көрсөтмөлөрдү өтүңүз.
- 7 айлануу - сактала турган файлдардын саны - 7
- күндө - күн сайын жаңы файл түзүү
- кысуу - эски файлдарды кысуу жана архивдөө
Сиз скриншоттон көрө аласыз "/ var / log /" папкасынын негизги журналы бар "syslog” жана 7 архив, бул конфигурация файлындагы эрежелерге туура келет.
Логротаттын кененирээк сүрөттөмөсүн сиз колдонмодон таба аласыз, "адам logrotate” буйругу
Linux журналдарын чогултуу - журнал
Жыгачтарды жыйноо кызматы systemd-журнал инициализация системасынын бир бөлүгү болуп саналат systemd. Linux журнал файлдары сакталат "/var/log/journal/” атайын форматта жана жардамы менен ачылат journalctl пайдалуу. Жазуулардын форматы мурункудай эле rsyslog.
буйрук journalctl эч кандай атрибуттары жок бардык жазууларды көрсөтөт, бирок чоңураак журналдар үчүн ылайыктуу эмес. Келгиле, бул утилитанын айрым варианттарын карап көрөлү.
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- реалдуу убакытта билдирүүлөрдү көрсөтүү
Жакшыраак ийкемдүүлүк үчүн бул параметрлерди айкалыштыра аласыз. Келгиле, бардык каталарды көрсөтөлү pptpd кызмат
journalctl -u pptpd -p err
Атрибут катары аткарылуучу файлга жолду көрсөтсөңүз, утилита бул файл тарабынан жөнөтүлгөн бардык билдирүүлөрдү көрсөтөт. Файл тарабынан жөнөтүлгөн бардык билдирүүлөрдү көрсөтөлү "/usr/bin/sudo” 04-жылдын 15-февралында саат 18:2020тен бери. Чынында, ал жогорку уруксаттар менен аткарылган бардык буйруктарды көрсөтөт.
journalctl -S "2020-02-18 04:15" /usr/bin/sudo
Төмөнкү буйрукту аткаруу үчүн журнал файлдары канча диск мейкиндигин ээлей турганын билүү үчүн
journalctl --disk-usage
Журнал файлын 1 Гб менен чектөө үчүн төмөнкү буйрукту аткарыңыз
journalctl --vacuum-size=1G
Экилик файлдарды ачуу
Эми кээ бир атайын файлдарды карап көрөлү "/ var / log /Бардык кирүү аракеттери сакталган папка. Бул файлдар бинардык жана атайын программалар менен гана ачылат.
/var/log/wtmp ийгиликтүү кирүү аракеттери тууралуу маалыматты камтыйт. Аны ачуу үчүн акыркы утилитаны колдонуңуз.
/var/log/btmp - бардык ишке ашпай калган кирүү аракеттерин камтыйт. Аны акыркы уруксаттар менен lastb менен ачса болот. Атрибут -n файлдын аягына чейин көрсөтүлгөн саптардын санын аныктайт.
/var/log/lastlog - ар бир эсеп жазуусу үчүн акыркы кирүү аракетинин убактысын камтыйт. Аны менен ачса болот акыркы журнал