# journald günlükleri çok büyük: journal boyutunu kontrol edin ve sınırlayın

Birçok Linux sunucusunda systemd journal zamanla /var altındaki en büyük öğeye dönüşür. Boyutunu görebilir, bir kez temizleyebilir ve küçük kalması için bir sınır koyabilirsiniz; üstelik diğer günlük dosyalarına dokunmanız gerekmez.

## 1. Journal'ın ne kadar yer kapladığını görün

journalctl --disk-usage komutunu çalıştırın. Arşivlenmiş ve etkin journal dosyalarının toplam boyutunu gösterir. Dosyalar normalde /var/log/journal (kalıcı) veya /run/log/journal (yalnızca bellekte tutulur) dizininde bulunur.
/var/log/journal dizini yoksa sisteminiz journal'ı yalnızca bellekte tutuyor olabilir; bu durumda gördüğünüz boyut diskle değil, RAM ile sınırlıdır.

## 2. Bir kez temizleyin

Journal'ı belirli bir boyutta veya altında tutmak için sudo journalctl --vacuum-size=500M komutunu çalıştırın. Yalnızca son kayıtları tutmak için sudo journalctl --vacuum-time=14d komutunu çalıştırın. Her ikisi de eski arşivlenmiş journal dosyalarını siler; içerdikleri günlükler sonradan geri alınamaz.
Doğrulamak için journalctl --disk-usage komutunu tekrar çalıştırın. Temizleme işlemi arşivlenmiş dosyaları bütün olarak sildiğinden, sonuç hedefin biraz üstünde veya altında olabilir.

## 3. Kalıcı bir sınır belirleyin

/etc/systemd/journald.conf dosyasını açın (veya /etc/systemd/journald.conf.d/ içinde bir drop-in dosyası oluşturun) ve [Journal] bölümünün altına SystemMaxUse=500M ayarını girin. Biraz boş alan da korumak isterseniz SystemKeepFree=1G başka bir seçenektir. SystemMaxUse kalıcı journal'ı sınırlar; RuntimeMaxUse ise bellekteki journal için aynı işi yapar.
sudo systemctl restart systemd-journald komutuyla uygulayın, ardından bir süre sonra journalctl --disk-usage komutunu kontrol edin.

## 4. Neyi saklamanız gerektiğine karar verin

Daha küçük bir journal, hata ayıklama için daha kısa bir geçmiş demektir. Bir hizmetin daha uzun geçmişine ihtiyacınız varsa her şeyi sunucuda tutmak yerine günlüklerini başka bir yere aktarın.
En çok hangi hizmetin yazdığına bakın: journalctl -b -p warning --no-pager | tail son uyarıları gösterir ve dakikada binlerce satır günlük yazan bir hizmet kaynağında düzeltmeye değerdir.

## FAQ

**journalctl --vacuum-size çalıştırmak güvenli mi?**

Sistemin kendisi için evet: yalnızca eski arşivlenmiş journal dosyalarını siler. O günlük geçmişini kaybedersiniz; bu yüzden önce bir inceleme için gerekip gerekmediğinden emin olun.

**journald.conf dosyasını düzenledikten sonra bir şeyi yeniden başlatmam gerekir mi?**

systemd-journald hizmetini yeniden başlatın (sudo systemctl restart systemd-journald). Sınır o andan itibaren uygulanır ve eski dosyalar journal döndükçe küçültülür.

**/var/log/journal neden yok?**

Kalıcı depolama kapalıdır veya dizin olmadan auto olarak ayarlanmıştır. Bu durumda journal bellekte /run/log/journal altında bulunur ve yeniden başlatmada kaybolur. Kalıcılık istiyorsanız /var/log/journal dizinini oluşturun ve journald'yi yeniden başlatın.

Source: https://raincleaner.eu/tr/guides/journald-logs-too-big-limit-journal-size