LinuxOrtaSistem günlükleri

systemd journal

İkili journald dosyaları: güvenilir alanlar, önyükleme kimliği, gerçek zamanlı ve monoton mikrosaniye zaman damgası ve sıra numarası içeren kayıtlar.

01Konum

  • /var/log/journal/<machine-id>/*.journal
  • /var/log/journal/<machine-id>/*.journal~
  • /run/log/journal/<machine-id>/*.journal (volatile)

02Yanıtladığı sorular

  • Bir hizmet, çekirdek veya kullanıcı işlemi ne zaman ne kaydetti?
  • Bir olay hangi önyükleme oturumuna aitti; her önyükleme ne zaman başladı ve bitti?
  • Bir iletiyi hangi UID, PID, yürütülebilir dosya ve birim üretti?
  • Bir journal dosyası değiştirildi mi (mühürleme etkinse)?

03Biçim ve sürümler

Biçimİkili journal dosyası: 'LPKSHHRH' başlık imzası, 64 bite hizalı nesneler, veri nesnelerinde isteğe bağlı XZ/LZ4/ZSTD sıkıştırması ve isteğe bağlı Forward Secure Sealing etiketleri. Tüm zamanlar mikrosaniyedir.
Geçerli olduğu sürümler2026-10-14 tarihinde okunan systemd ana dal belgeleri. Varsayılan Storage= değeri dağıtım tarafından derleme sırasında belirlenir.

04Temel alanlar

AlanNe anlatır
MESSAGE, PRIORITY, SYSLOG_IDENTIFIERİleti metni ve istemcinin sağladığı alanlar; journald alt çizgiyle başlamayan alanları doğrulamaz.
_PID, _UID, _GID, _COMM, _EXE, _CMDLINEjournald'nin kaynak işlem hakkında eklediği güvenilir alanlar; istemci kodu bunları değiştiremez.
_SYSTEMD_UNIT, _SYSTEMD_USER_UNIT, _SYSTEMD_SESSIONİşlemin systemd birimi ve oturum bağlamı.
_BOOT_ID, _MACHINE_ID, _HOSTNAMEÖnyükleme, makine ve ana makine kimliği.
_TRANSPORTKaydın nasıl alındığı (ör. audit, driver, syslog, journal, stdout, kernel).
__SEQNUM, __SEQNUM_IDSıra numarası ve kimliği; yazıcı başına tekdüze artar, boşlukları tespit etmede yararlıdır.

05Zaman damgaları

AlanKodlamaNot
__REALTIME_TIMESTAMPµs since 1970-01-01 UTC (CLOCK_REALTIME)Kaydın journald tarafından alındığı zaman.
__MONOTONIC_TIMESTAMPµs of CLOCK_MONOTONIC, paired with _BOOT_IDYalnızca önyükleme kimliğiyle birlikte anlamlıdır; genellikle o önyüklemenin başlangıcına görelidir.
_SOURCE_REALTIME_TIMESTAMPµs since 1970-01-01 UTCAlım zamanından farklıysa iletinin en erken güvenilir zaman damgası.
Header head_entry_realtime / tail_entry_realtimeµs since 1970-01-01 UTCDosyadaki ilk ve son kaydın zamanları; kapsamı sınırlamada yararlıdır.

Ham değerleri Zaman damgası çözücü, yerel saatleri ise Yerel saatten UTC'ye ile çözün.

06İnceleme akışı

  1. /var/log/journal ağacının tamamını (canlı sistemde /run/log/journal'ı da) kopyalayın; journald belgeleri dosyaların okunmasının veya kopyalanmasının güvenli olduğunu belirtir.
  2. Kopyayı journalctl --directory veya --file ile okuyun ve çıktı için --utc kullanın.
  3. Önyükleme kimliklerini zaman aralıklarına eşlemek için --list-boots çalıştırın, ardından birim, _UID veya _COMM ile süzün.
  4. İç tutarlılığı (ve FSS yapılandırıldıysa özgünlüğü) kontrol etmek için --verify çalıştırın.

07Yorum tuzakları

  • Storage=auto ile veriler yalnızca /var/log/journal varsa kalıcıdır; yoksa /run'da tutulur ve yeniden başlatmada kaybolur.
  • SystemMaxUse/SystemKeepFree sınırlarına uymak için arşivlenmiş dosyalar silinir; eski dönemler eksik olabilir.
  • Hız sınırlaması çok ileti üreten hizmetlerin iletilerini düşürebilir; bunun yerine düşürülen sayıyı belirten bir ileti yazılır.
  • .journal~ uzantısıyla yeniden adlandırılan dosyalar düzensiz kapanmış veya bozuk bulunmuştur; okuyun ancak boşluk bekleyin.

09Kaynaklar

  1. systemd — Journal File Format systemd project (GitHub) · erişim 2026-10-14
  2. systemd — journald.conf(5) systemd project (GitHub) · erişim 2026-10-14
  3. systemd — systemd.journal-fields(7) systemd project (GitHub) · erişim 2026-10-14
  4. systemd — journalctl(1) systemd project (GitHub) · erişim 2026-10-14
  5. systemd — systemd-journald.service(8) systemd project (GitHub) · erişim 2026-10-14
  6. ForensicArtifacts — artifacts/data/linux.yaml ForensicArtifacts project (GitHub) · erişim 2026-10-14