Nalika anjeun ngalaman masalah sareng kinerja server anjeun, hal anu mimiti anjeun kedah laksanakeun nyaéta mariksa log Linux anjeun . Dina log sistem, anjeun tiasa mendakan sababaraha pesen diagnostik anu mangpaat tina komponén sistem operasi anu béda sapertos kernel atanapi rupa-rupa layanan, janten anjeun kamungkinan bakal mendakan panyabab kagagalan di dinya.
Unggal pesen dina log dihasilkeun dina hasil tina acara tangtu dina sistem operasi: ti pamaké, otorisasina pikeun mareuman layanan atawa gagalna aplikasi. Kajadian ieu ngagaduhan prioritas anu béda-béda gumantung kana kumaha kritisna. Aya sababaraha jinis acara di Linux:
emerg- gagalna, prioritas pangluhurna;alert- warning urgent;crit- kajadian kritis;err- kasalahan biasa;warn- warning biasa;notice- bewara;info- pesen inpormasi;debug- inpormasi debugging;
Ayeuna, layanan panén log utama dina Linux nyaéta rsyslog sareng systemd-journald . Éta cocog sareng kalolobaan pakét distribusi modéren sareng tiasa dianggo sacara mandiri.
rsyslog
Log layanan ieu ayana dina polder " /var/log/ " dina bentuk file téks biasa. Pesen log disimpen dina file anu béda-béda gumantung kana jinis kajadian. Salaku conto, " /var/log/auth.log " ngandung inpormasi ngeunaan otorisasina pangguna dina sistem, sareng " /var/log/kern.log " ngandung pesen kernel. Nami file tiasa bénten-bénten di unggal pakét distribusi, janten hayu urang tingali file konfigurasi pikeun kéngingkeun ideu dimana " /etc/rsyslog.d/50-default.conf ".
Aturan-aturan ieu nampilkeun file mana anu ngandung unggal jinis pesen log. Bagian kénca nampilkeun jinis pesen dina bentuk ieu " [Sumber].[Prioritas] " sareng bagian katuhu nampilkeun nami file log. Nalika nyerat jinis pesen, karakter " * " tiasa ditambahkeun. Éta hartosna nilai kosong atanapi " henteu aya " anu ngahapusna tina daptar. Hayu urang tingali langkung caket kana dua aturan anu munggaran.
“auth,authpriv.* /var/log/auth.log”
“*.*;auth,authpriv.none -/var/log/syslog”
Aturan anu kahiji hartina sadaya pesen anu ditampi tina mékanisme otorisasi bakal dirékam kana file " /var/log/auth.log ". Sadaya usaha otorisasina (boh anu suksés boh anu henteu) bakal kadaptar dina file ieu. Aturan anu kadua nunjukkeun yén sadaya pesen kecuali anu aya hubunganana sareng otorisasina bakal dirékam kana file " /var/log/syslog ". Dua file ieu biasana anu paling populér. Aturan di handap ieu ngajelaskeun jalur pikeun nyimpen log kernel " kern.* " sareng log layanan surat " mail.* ".
File log tiasa dibuka nganggo éditor téks naon waé, sapertos less , cat , tail . Hayu urang buka file " /var/log/auth.log " .
less /var/log/auth.log
Unggal baris file mangrupa pesen misah narima ti aplikasi atawa jasa. Sadaya seratan henteu paduli sumberna gaduh hiji format sareng diwangun ku 5 bagian. Hayu urang nyandak pesen anu disorot dina layar sabagé conto.
- Stempel waktos pesen - "12 Pebruari 06:18:33"
- Ngaran komputer anu ngirim pesen - "vds"
- Ngaran aplikasi atanapi jasa anu ngirim pesen - "sshd"
- ID prosés - [653]
- Teks pesen - "Katampa sandi pikeun mihail tina 188.19.42.165 port 2849 ssh2"
Ieu mangrupikeun conto sambungan anu suksés ka SSH.
Sareng ieu kumaha usaha login anu gagal:
Berkas ieu ogé ngarékam paréntah kalayan idin maju
Hayu urang buka file /var/log/syslog
Pesen anu disorot dina layar nyaéta pesen ngeunaan pareuman antarmuka jaringan.
Pikeun milarian inpormasi ngalangkungan file téks anu panjang, anggo utilitas grep . Anjeun tiasa mendakan sadaya pesen anu ditampi tina layanan pptpd dina file " /var/log/syslog ".
grep 'pptpd' /var/log/syslog
Salila diagnostik anjeun tiasa nganggo utilitas tail anu tiasa nampilkeun sababaraha baris terakhir file. Paréntah " tail -f /var/log/syslog " bakal ngamungkinkeun anjeun ningali rékaman log sacara real-time.
Layanan rsyslog téh fléksibel pisan sarta kuat. Éta bisa dipaké pikeun ngumpulkeun log dina sistem lokal ogé dina tingkat perusahaan. Anjeun tiasa mendakan dokuméntasi lengkep dina situs wéb resmi https://www.rsyslog.com/
Rotasi log dina Linux
Rékaman log lumangsung terus-terusan, janten ukuran file teras-terasan ningkat. Mékanisme rotasi mastikeun pangarsipan otomatis log lami sareng nyiptakeun file énggal. Gumantung kana aturan, éta tiasa kajantenan unggal dinten, mingguan, bulanan atanapi dumasar kana wates ukuran. Nalika log énggal didamel, anu lami tiasa dihapus atanapi dikirim via email. Rotasi log dilakukeun ku utilitas logrotate . Anjeun tiasa mendakan konfigurasi utama dina file " /etc/logrotate.conf ". Eusi file ogé diprosés dina folder " /etc/logrotate.d/ ".
Aturan anyar tiasa dilebetkeun kana file konfigurasi utama. Nanging, langkung saé ngadamel file anu misah dina " /etc/logrotate.d/ ". Sacara standar, aya sababaraha file dina diréktori ieu.
Hayu urang tingali file " /etc/logrotate.d/rsyslog " anu ngandung aturan rotasi pikeun log layanan rsyslog.
Kahiji, aturan kudu ngandung jalur ka file log lajeng buka sagala tungtunan dina kurung melengkung.
- puteran 7 - Jumlah file pikeun disimpen - 7
- unggal poe - jieun file anyar unggal dinten
- niiskeun - komprési sareng arsipkeun file lami
Anjeun tiasa ningali dina cuplikan layar yén dina polder " /var/log/ " aya log utama " syslog " sareng 7 arsip, anu saluyu sareng aturan dina file konfigurasi.
Anjeun tiasa mendakan pedaran anu langkung lengkep ngeunaan logrotate dina manual, ngalaksanakeun paréntah " man logrotate ".
Ngumpulkeun log Linux Ubuntu - journald
Layanan panén log systemd-journald mangrupikeun bagian tina sistem inisialisasi systemd . File log Linux disimpen dina " /var/log/journal/ " dina format khusus sareng tiasa dibuka kalayan bantosan utilitas journalctl . Format rékaman sami persis sareng dina rsyslog.
Paréntah journalctl tanpa atribut némbongkeun sadaya rékaman tapi éta henteu cocog pikeun log anu langkung ageung. Hayu urang tingali sababaraha pilihan tina utilitas ieu.
journalctl -b- némbongkeun sakabéh rékaman saprak mimiti panungtunganjournalctl -S "2020-02-17 12:00" -U "2020-02-17 12:10"- nembongkeun catetan dina jangka waktu nu tangtujournalctl -u pptpd- nembongkeun rékaman tina jasa tangtujournalctl -k- nembongkeun pesen kerneljournalctl -p err- nunjukkeun pesen tina prioritas anu tangtu, pesen prioritas anu langkung luhur dina hal ieu (crit, waspada, emerg)journalctl -f- nunjukkeun pesen sacara real-time
Pikeun kalenturan anu langkung saé, anjeun tiasa ngagabungkeun pilihan ieu. Hayu urang témbongkeun sadaya kasalahan dina layanan pptpd
journalctl -u pptpd -p err
Upami anjeun nangtukeun jalur ka file anu tiasa dieksekusi salaku atribut, utilitas éta bakal nunjukkeun sadaya pesen anu dikirim ku file ieu. Hayu urang tunjukkeun sadaya pesen anu dikirim ku file " /usr/bin/sudo " ti saprak 04:15 tanggal 18 Pébruari 2020. Kanyataanna, éta bakal nunjukkeun sadaya paréntah anu dijalankeun kalayan idin anu langkung luhur.
journalctl -S "2020-02-18 04:15" /usr/bin/sudo
Pikeun milarian sabaraha file log ruang disk anu diperyogikeun pikeun ngajalankeun paréntah di handap ieu
journalctl --disk-usage
Pikeun ngawatesan file log kana 1Gb laksanakeun paréntah di handap ieu
journalctl --vacuum-size=1G
Muka file binér
Ayeuna hayu urang tingali sababaraha file khusus dina folder " /var/log/ " dimana sadaya usaha login disimpen. File-file ieu binér sareng ngan ukur tiasa dibuka nganggo program khusus.
/var/log/wtmp ngandung informasi ngeunaan usaha login anu suksés. Anggo utilitas terakhir pikeun mukakeunana.
/var/log/btmp - ngandung sadaya usaha login anu gagal. Éta tiasa dibuka nganggo lastb kalayan idin anu langkung maju. Atribut -n ngahartikeun jumlah baris anu ditampilkeun ti tungtung file.
/var/log/lastlog - ngandung waktos tindakan login terakhir pikeun unggal rékaman akun. Éta tiasa dibuka nganggo lastlog