Pardus Linux’ta /etc/logrotate.d/ Sistem Günlüklerinin Sessiz Kahramanı
Pardus Linux’ta sistem, servis ve uygulama günlükleri (log dosyaları) zamanla disk alanını doldurabilir, performans sorunlarına ve hatta servis kesintilerine yol açabilir.
Bu noktada logrotate, günlükleri:
-
döndüren (rotate),
-
sıkıştıran,
-
eskiyenleri silen
hayati bir sistem aracıdır.
📌 /etc/logrotate.d/ dizini, servislere özel log yönetim kurallarının tutulduğu ana dizindir.
1️⃣ Logrotate Nedir?
logrotate, Linux sistemlerde log dosyalarının:
-
belirli periyotlarda (günlük / haftalık / aylık)
-
otomatik olarak yeniden adlandırılmasını
-
sıkıştırılmasını
-
belirli süreden sonra silinmesini
sağlayan standart araçtır.
📦 Pardus’ta varsayılan olarak kurulu gelir.
2️⃣ /etc/logrotate.d/ Dizininin Rolü
🔹 /etc/logrotate.conf
Genel ayarları içerir.
🔹 /etc/logrotate.d/
Her servis için ayrı dosyalar bulunur:
| Dosya | Açıklama |
|---|---|
rsyslog | Sistem logları |
apache2 | Web sunucu logları |
samba | Samba paylaşımları |
mysql | Veritabanı logları |
apt | Paket yöneticisi logları |
cups-daemon | Yazıcı logları |
📌 En iyi uygulama:
Her servis için ayrı logrotate dosyası
3️⃣ Logrotate Ne Zaman Çalışır?
Pardus’ta logrotate cron ile çalışır:
⏱️ Varsayılan:
-
Günde 1 kez
-
Sessiz ve otomatik
İstersen manuel çalıştırabilirsin:
4️⃣ Temel Logrotate Direktifleri (Altın Liste)
| Direktif | Açıklama |
|---|---|
daily | Günlük döndür |
weekly | Haftalık |
monthly | Aylık |
rotate 7 | 7 eski dosya sakla |
compress | .gz sıkıştır |
delaycompress | 1 gün sonra sıkıştır |
missingok | Log yoksa hata verme |
notifempty | Boşsa döndürme |
create | Yeni log oluştur |
copytruncate | Servisi durdurmadan döndür |
postrotate | Döndürme sonrası komut |
prerotate | Öncesi komut |
5️⃣ Basit Bir Örnek (rsyslog)
🔹 14 gün saklar
🔹 Günlük döndürür
🔹 Sıkıştırır
🔹 Log yoksa hata vermez
6️⃣ 🏫 ETAP 23 & Okul Senaryosu Örneği
🎓 Öğrenci Tahtaları – Daha Kısa Log Saklama
✔ Disk dolmaz
✔ Gereksiz geçmiş tutulmaz
👨🏫 Öğretmen Tahtaları – Daha Uzun Kayıt
✔ Sorun analizine uygun
✔ Yetki kontrollü
7️⃣ Samba AD Logrotate (ÇOK ÖNEMLİ)
Samba logları hızla büyür:
📁 /var/log/samba/
Örnek TSOMTAL Samba Logrotate Dosyası
📌 postrotate şarttır, aksi halde Samba eski dosyayı kullanmaya devam eder.
8️⃣ LiderAhenk / Ahenk İstemci Logları
✔ 1 ay geçmiş tutulur
✔ Merkezi yönetimde yeterli
9️⃣ Logrotate Test & Hata Ayıklama
🔍 Test Modu (ÖNERİLEN)
👉 Hiçbir şey silmez, sadece simülasyon yapar.
⚠️ Zorla Çalıştırma
🔐 Güvenlik & Performans İpuçları
✅ Logları gereğinden uzun tutma
✅ Öğrenci cihazlarında rotate sayısını düşük tut
✅ Sunucularda compress + rotate yüksek olsun
✅ Büyük servislerde copytruncate yerine postrotate + reload kullan
✅ Disk dolmasını bekleme, önceden önlem al
🧩 TSOMTAL İçin Önerilen Yapı
🎯 Okul–kurum log disiplini = sistem sağlığı
📌 Sonuç
/etc/logrotate.d/:
-
Sessiz çalışır
-
Ama diskin dolmamasını sağlar
-
Sistem yöneticisinin en güçlü yardımcısıdır
🧠 “Log yönetimi yoksa, sorun tespiti de yoktur.”
1) Öğrenci–öğretmen otomatik ayıran script (logrotate profili seçtirir)
Amaç: Cihaz Samba AD’de hangi gruptaysa ona göre:
-
/etc/logrotate.d/syslog-studentveya -
/etc/logrotate.d/syslog-teacher
dosyasını aktif etsin.
A) Logrotate kural dosyalarını oluştur
Öğrenci profili
Öğretmen profili
B) Seçici script
C) Günde 1 kez otomatik çalıştır (systemd timer)
Not:
wbinfokomutlarının çalışması için ETAP istemcide domain join + winbind düzgün olmalı. Yoksa script otomatik “öğrenci”ye düşer (güvenli varsayılan).
2) Grafana + log izleme mimarisi (okul ağına uygun)
Önerilen (kolay + sağlam) mimari: Loki + Promtail + Grafana
-
Promtail (istemcilerde/ETAP 23):
/var/log/*okuyup Loki’ye gönderir -
Loki (sunucuda): log depolar & sorgular
-
Grafana (sunucuda): dashboard + arama + alarm
Topoloji (TSOMTAL örneği)
-
leader/dcya da ayrı VM:-
Grafana (3000/tcp)
-
Loki (3100/tcp)
-
-
ETAP 23’ler:
-
Promtail agent
-
ETAP 23’te “etiketleme” (teacher/student + OU/Lab)
Promtail’a label basarsın:
-
role=teacher|student -
lab=lab1|lab2|ogretmenler_odasi -
host=<hostname>
Böylece Grafana’da:
-
“Sadece Öğretmen Tahtaları auth.log”
-
“Lab-1’de son 1 saatte network error”
gibi filtreler çok kolay olur.
Dashboard fikri (hazır panolar)
-
Login / auth başarısız deneme sayısı (auth.log)
-
Samba erişim hataları (var/log/samba)
-
Kernel / touch error (kern.log)
-
Ahenk agent hataları (/var/log/ahenk)
İstersen bir sonraki mesajda ben sana:
-
Loki + Grafana docker-compose (Pardus Server’a uygun)
-
Promtail config (role/lab label’lı)
-
3 adet hazır dashboard sorgusu (LogQL)
paket halinde yazayım.
3) Windows Event Log ↔ Linux Log eşleştirme rehberi (pratik tablo)
Aşağıdaki eşleştirme, özellikle AD / giriş-çıkış / güvenlik / paylaşım odaklıdır.
A) Kimlik doğrulama / giriş olayları
| Windows Event Log (Security) | Anlam | Linux karşılığı |
|---|---|---|
| 4624 | Başarılı oturum açma | /var/log/auth.log “Accepted password/Accepted publickey” |
| 4625 | Başarısız oturum açma | auth.log “Failed password” |
| 4634 | Oturum kapatma | auth.log “session closed” (pam/systemd) |
| 4648 | Farklı kimlik bilgisiyle oturum | sudo kayıtları (auth.log) / Kerberos bilet işlemleri |
| 4720 | Kullanıcı oluşturma | Samba AD DC’de: /var/log/samba/log.samba + samba-tool audit (ayarlarsan) |
| 4726 | Kullanıcı silme | Samba log + audit |
| 4728/4729 | Gruba üye ekleme/çıkarma | Samba log + audit |
B) Paylaşım / dosya erişimi
| Windows | Anlam | Linux |
|---|---|---|
| 5140 | Paylaşıma erişildi | Samba: /var/log/samba/* + full_audit VFS modülü |
| 5145 | Paylaşımda dosya erişim denetimi | Samba full_audit ile dosya bazlı kayıt |
Windows’taki 5140/5145 seviyesinde ayrıntı için Samba’da vfs_full_audit önerilir.
C) Sistem / servis / kernel
| Windows | Anlam | Linux |
|---|---|---|
| System log (Service Control Manager) | Servis başladı/durdu | journalctl -u servis |
| Kernel-Power 41 | Ani kapanma | journalctl -b -1 + last -x + syslog |
| Driver/Device hataları | Sürücü sorunları | dmesg, kern.log, journalctl -k |
D) En iyi pratik: “tek ekranda” izleme
-
Windows tarafını WEF (Windows Event Forwarding) ile topla
-
Linux tarafını Promtail ile Loki’ye gönder
-
Grafana’da iki veri kaynağını birleştir (istersen Windows için de Loki/Promtail benzeri ajan yaklaşımı kurulur)
Yorumlar