Bagaimana untuk Melihat Log Systemctl

Bagaimana Untuk Melihat Log Systemctl



Systemd adalah salah satu sistem init yang diterima pakai secara meluas di Linux. Kelebihan utama systemd ialah keupayaannya untuk mengurus log sistem. Ia mengumpul semua mesej kernel dan proses pengguna ke dalam log yang dipanggil Jurnal . The dijurnalkan ialah daemon yang menangkap dan mengurus log dalam fail binari. Daemon ini mempunyai faedah utama untuk menyimpan data dalam bentuk berstruktur dan diindeks, menjadikannya mudah untuk mengakses dan menganalisis melalui journalctl utiliti.

Dalam panduan ini, saya akan membincangkan cara melihat log systemd pada Linux menggunakan utiliti baris arahan yang berbeza.

Catatan: Arahan yang dinyatakan dalam panduan ini dilakukan pada Ubuntu. Mereka akan berfungsi tanpa ralat pada semua pengedaran Linux yang disertakan dengan sistem init systemd.







Kaedah untuk Melihat Log systemctl

Terdapat dua pendekatan untuk melihat log systemd di Linux:



Systemctl memberikan log khusus perkhidmatan terkini, manakala journalctl memberikan log seluruh sistem yang mendalam bagi semua perkhidmatan dan perkhidmatan khusus.



Saya akan meneroka kedua-dua utiliti untuk melihat log systemd. Tetapi pertama, mari kita fahami perbezaan utama antara perintah systemctl dan journalctl.





Apa itu systemctl

Systemctl ialah utiliti baris arahan yang menguruskan perkhidmatan systemd, seperti mendayakan atau melumpuhkan perkhidmatan dan melihat status. The status systemctl arahan juga mencetak beberapa baris log perkhidmatan di bahagian bawah output, dan log ini adalah selepas but baru-baru ini. Walau bagaimanapun, talian log perkhidmatan ini adalah dari selepas but semasa sahaja.

Apa itu journalctl

Journalctl ialah utiliti baris arahan yang digunakan untuk mencetak log yang dikumpul oleh systemd. Berbanding dengan systemctl, ia menyediakan output terperinci dengan pilihan penapisan. Utiliti ini direka untuk:



  • Baca log (Log tertua didahulukan)
  • Pantau log
  • Tapis log berdasarkan masa, perkhidmatan atau pengguna

Systemd mengumpul log daripada kernel, perkhidmatan, dan daemon dan menyimpannya di tempat terpusat.

Cara Melihat Log Perkhidmatan menggunakan systemctl

Sintaks umum untuk mencari log perkhidmatan menggunakan systemctl utiliti disebutkan di bawah.

status systemctl [ nama perkhidmatan ]

Contohnya, untuk melihat maklumat log bagi smbd.service gunakan arahan yang diberikan di bawah.

status systemctl smbd.service

Untuk mendapatkan output tanpa penomboran, tambahkan -tiada kelui pilihan dalam arahan.

status systemctl smbd.service --tiada-halaman muka surat

Cara Melihat Log Perkhidmatan menggunakan journalctl

Untuk melihat log perkhidmatan khusus systemd, gunakan journalctl dengan -dalam arahan dan perkhidmatan atau nama unit.

journalctl -dalam [ nama perkhidmatan ]

Dalam arahan di atas, the -dalam bendera, singkatan dari –unit digunakan untuk menapis journalctl output dengan nama unit.

Sebagai contoh, untuk mencetak log smbd daemon, saya akan menggantikan [nama unit] dengan smbd.service .

journalctl -dalam smbd.service

Dalam output, dapat dilihat bahawa entri tertua datang dahulu dan kemudian log selepas setiap but disenaraikan.

Untuk dapatkan entri terkini guna dulu -Ia adalah ringkasan untuk –penghujung kelui.

journalctl -dalam smbd.service -Ia adalah

Jika anda ingin meninggalkan penomboran daripada output, tambahkan sahaja -tiada kelui dalam arahan yang disebutkan di atas.

Untuk terus mencetak entri log dalam penggunaan masa nyata -f ringkasan untuk –ikut .

journalctl -dalam smbd.service -f

Penapisan boleh dikembangkan lagi dengan menggunakan bendera -b singkatan untuk – but , yang mencetak log berdasarkan but semasa.

journalctl -dalam [ nama unit ] -b

Mari cetak log smbd.service daripada but baru-baru ini.

journalctl -dalam smbd.service -b

Output di atas menyerupai output yang kita dapat menggunakan status systemctl perintah.

Untuk mendapatkan gambaran keseluruhan log terperinci, gunakan -x ringkasan untuk –katalog pilihan.

journalctl -dalam smbd.service -x

Ini akan menambahkan penerangan ringkas tentang log.

Sekarang, untuk mencetak log berdasarkan masa menggunakan journalctl terdapat dua pilihan, -S ringkasan untuk -sejak dan -DALAM ringkasan untuk –sehingga .

journalctl -dalam [ nama unit ] -S '[tahun-bulan-hari] [jam:minit:saat]'

Contohnya, untuk melihat log unit smbd daripada 2024:01:30 12:05:00 .

journalctl -dalam smbd.service -S '2024:01:30 12:05:00'

Kesimpulan

Untuk melihat log systemd perkhidmatan, terdapat dua utiliti utama, journalctl dan systemctl. Journalctl direka khusus untuk melihat log systemd. Walau bagaimanapun, systemctl juga mempunyai pilihan untuk mencetak log perkhidmatan. Untuk mencetak log penggunaan perkhidmatan, journalctl -u [nama-unit] dan systemctl [nama unit].