Systemctl Günlükleri Nasıl Görüntülenir?

Systemctl Gunlukleri Nasil Goruntulenir



Systemd, Linux'ta yaygın olarak benimsenen init sistemlerinden biridir. Systemd'nin en önemli avantajı sistem günlüklerini yönetme yeteneğidir. Tüm çekirdek mesajlarını ve kullanıcı işlemlerini adlı bir günlüğe toplar. Günlük . günlüğe kaydedilen Günlükleri ikili bir dosyada yakalayan ve yöneten arka plan programıdır. Bu arka plan programının, verileri yapılandırılmış ve indekslenmiş biçimde saklama gibi önemli bir faydası vardır; bu sayede erişim ve analizler kolaylaşır. günlükctl Yarar.

Bu kılavuzda, farklı komut satırı yardımcı programlarını kullanarak Linux'ta systemd günlüklerinin nasıl görüntüleneceğini ele alacağım.

Not: Bu kılavuzda bahsedilen komutlar Ubuntu'da gerçekleştirilir. Systemd init sistemiyle birlikte gelen tüm Linux dağıtımlarında hatasız çalışacaklardır.







Systemctl Günlüklerini Görüntüleme Yöntemleri

Linux'ta systemd günlüklerini görüntülemenin iki yaklaşımı vardır:



Systemctl, hizmete özel en güncel günlükleri verirken, Journalctl tüm hizmetlerin ve belirli hizmetin sistem çapında derinlemesine günlüklerini verir.



Sistem günlüklerini görüntülemek için her iki yardımcı programı da keşfedeceğim. Ama önce systemctl ve Journalctl komutları arasındaki temel farkı anlayalım.





systemctl nedir

Systemctl, hizmeti etkinleştirme veya devre dışı bırakma ve durumu görüntüleme gibi sistem hizmetlerini yöneten bir komut satırı yardımcı programıdır. sistemctl durumu komut ayrıca çıktının alt kısmında hizmetin birkaç günlük satırını yazdırır ve bu günlük, son önyüklemeden sonradır. Ancak hizmetin bu günlük satırları yalnızca geçerli önyüklemeden sonradır.

Journalctl nedir?

Journalctl, systemd tarafından toplanan günlükleri yazdırmak için kullanılan bir komut satırı yardımcı programıdır. Systemctl ile karşılaştırıldığında filtreleme seçenekleriyle ayrıntılı çıktı sağlar. Bu yardımcı program aşağıdaki amaçlar için tasarlanmıştır:



  • Günlükleri oku (En eski günlük önce gelir)
  • Günlükleri izleyin
  • Günlükleri zamana, hizmete veya kullanıcıya göre filtreleyin

Systemd, çekirdekten, hizmetlerden ve arka plan programlarından günlükleri toplar ve bunları merkezi bir yerde saklar.

Systemctl kullanarak bir Hizmetin Günlüğünü Görüntüleme

Bir hizmetin günlüğünü bulmak için genel sözdizimi sistemctl fayda aşağıda belirtilmiştir.

sistemctl durumu [ hizmet adı ]

Örneğin, günlük bilgilerini görüntülemek için smbd.hizmeti aşağıda verilen komutu kullanın.

systemctl durumu smbd.service

Sayfalandırma olmadan çıktı almak için şunu ekleyin: – çağrı cihazı yok komuttaki seçenek.

systemctl durumu smbd.service -- çağrı cihazı yok

Journalctl kullanarak bir Hizmetin Günlüğünü Görüntüleme

Belirli bir systemd hizmetinin günlüğünü görüntülemek için şunu kullanın: günlükctl ile -içinde komut ve hizmet veya birim adı.

günlükctl -içinde [ hizmet adı ]

Yukarıdaki komutta, -içinde bayrak, kısaltması –birim filtrelemek için kullanılır günlükctl Bir birim adına göre çıktı alınır.

Örneğin, günlüğü yazdırmak için smbd daemon, onu değiştireceğim [ünite adı] ile smbd.hizmeti .

günlükctl -içinde smbd.hizmeti

Çıktıda, en eski girişin önce geldiği ve her önyüklemeden sonra günlüğe kaydedildiği görülmektedir.

En son girişi almak için ilk kullanım -Bu kısa –çağrı cihazı sonu.

günlükctl -içinde smbd.hizmeti -Bu

Sayfalandırmayı çıktıdan çıkarmak istiyorsanız, basitçe şunu ekleyin: – çağrı cihazı yok yukarıda belirtilen komutlarda.

Günlük girişlerini gerçek zamanlı kullanımda sürekli olarak yazdırmak için -F kısa -takip etmek .

günlükctl -içinde smbd.hizmeti -F

Filtreleme, -b bayrağının kısaltması kullanılarak daha da genişletilebilir. -bot , günlükleri geçerli önyüklemeye göre yazdırır.

günlükctl -içinde [ birim adı ] -B

Günlükleri yazdıralım smbd.hizmeti son önyüklemeden.

günlükctl -içinde smbd.hizmeti -B

Yukarıdaki çıktı, kullanarak elde ettiğimiz çıktıya benzer. sistemctl durumu emretmek.

Ayrıntılı bir günlüğe genel bakış elde etmek için -X kısa -katalog seçenek.

günlükctl -içinde smbd.hizmeti -X

Bu, günlüğün kısa bir açıklamasını ekleyecektir.

Artık günlükleri günlükctl kullanarak zamana dayalı olarak yazdırmak için iki seçenek vardır: -S kısa -o zamandan beri Ve -İÇİNDE kısa -değin .

günlükctl -içinde [ birim adı ] -S '[yıl-ay-gün] [saat:dakika:saniye]'

Örneğin, birimin günlüklerini görüntülemek için smbd itibaren 2024:01:30 12:05:00 .

günlükctl -içinde smbd.hizmeti -S '2024:01:30 12:05:00'

Çözüm

Bir hizmetin sistem günlüklerini görüntülemek için iki ana yardımcı program vardır: Journalctl ve systemctl. Journalctl, systemd'nin günlüklerini görüntülemek için özel olarak tasarlanmıştır. Ancak systemctl'nin hizmet günlüğünü yazdırma seçeneği de vardır. Bir hizmet kullanımının günlüğünü yazdırmak için, Journalctl -u [ünite adı] ve sistemctl [birim-adı].