
Linux'ta Log Yönetimi: Sistem Loglarını Okuma ve Analiz Etme
Linux sistem loglarını nasıl okur ve analiz edersiniz? /var/log dizini, journalctl, logrotate ve log analizi için pratik komutlar ile sunucu sorun giderme rehberi.
Linux'ta Log Yönetimi: Sistem Loglarını Okuma ve Analiz Etme
Linux'ta her sistem aktivitesi log dosyalarına kaydedilir. Web sunucusu hataları, kimlik doğrulama girişimleri, sistem servisleri ve güvenlik olaylarının tamamı log dosyalarında tutulur. Bu dosyaları okumak ve analiz etmek, sorunları hızla teşhis etmenin anahtarıdır.
Linux Log Dosya Yapısı
Logların büyük çoğunluğu /var/log/ dizininde saklanır:
/var/log/
├── syslog / messages → Genel sistem logları
├── auth.log / secure → Kimlik doğrulama logları
├── kern.log → Çekirdek logları
├── dmesg → Donanım başlangıç mesajları
├── apache2/ / httpd/ → Apache web sunucu logları
├── nginx/ → Nginx logları
├── mysql/ → MySQL/MariaDB logları
├── php-fpm.log → PHP-FPM logları
├── mail.log → Mail sunucu logları
└── cron → Cron job logları
Temel Log Okuma Komutları
# Son 50 satır
tail -50 /var/log/syslog
# Canlı log takibi
tail -f /var/log/nginx/error.log
# Birden fazla log takibi
tail -f /var/log/nginx/error.log /var/log/php-fpm.log
# İlk 100 satır
head -100 /var/log/syslog
# Tüm dosyayı sayfa sayfa oku
less /var/log/syslog
Apache Web Sunucu Logları
Apache iki temel log dosyası tutar:
Access Log
Tüm HTTP istekleri kaydedilir:
192.168.1.100 - - [15/Jan/2026:10:30:00 +0300] "GET /index.php HTTP/1.1" 200 4521
Format: IP - - [Tarih] "İstek" DurumKodu Boyut
# Bugünkü 404 hataları
grep "404" /var/log/apache2/access.log | grep "$(date +'%d/%b/%Y')"
# En fazla istek atan IP'ler
awk '{print $1}' /var/log/apache2/access.log | sort | uniq -c | sort -rn | head -10
# 500 hataları
grep " 500 " /var/log/apache2/access.log | tail -20
Error Log
Uygulama ve sunucu hataları:
tail -50 /var/log/apache2/error.log
grep "PHP" /var/log/apache2/error.log | tail -20
Nginx Logları
# Hata logları
tail -100 /var/log/nginx/error.log
# Erişim logları
awk '{print $1}' /var/log/nginx/access.log | sort | uniq -c | sort -rn | head -10
# Belirli HTTP kodları
grep '"5[0-9][0-9]' /var/log/nginx/access.log | tail -20
MySQL Logları
# MySQL hata logu
tail -50 /var/log/mysql/error.log
# Yavaş sorgu logu (aktifse)
tail -50 /var/log/mysql/mysql-slow.log
Sistem Logları
/var/log/auth.log (Ubuntu) / /var/log/secure (RHEL)
Kimlik doğrulama olayları:
# Başarısız SSH giriş denemeleri
grep "Failed password" /var/log/auth.log | tail -20
# Başarılı giriş
grep "Accepted password" /var/log/auth.log | tail -10
# Brute force tespiti
grep "Failed password" /var/log/auth.log | awk '{print $11}' | sort | uniq -c | sort -rn | head -10
/var/log/syslog
Genel sistem olayları:
# Son sistem mesajları
tail -100 /var/log/syslog
# OOM (Out of Memory) sorunları
grep -i "oom|kill" /var/log/syslog | tail -20
# Disk hataları
grep -i "error|failed" /var/log/syslog | grep -i "disk|io" | tail -10
journalctl ile Log Yönetimi (systemd)
Modern Linux sistemlerde journald, logları merkezi olarak yönetir:
# Tüm sistem logları
journalctl
# Son loglar
journalctl -n 50
# Canlı takip
journalctl -f
# Belirli servis
journalctl -u nginx
journalctl -u mysql --since today
# Tarih aralığı
journalctl --since "2026-01-01" --until "2026-01-31"
journalctl --since "1 hour ago"
# Hata ve üzeri
journalctl -p err
journalctl -p warning
# Önyükleme logları
journalctl -b 0 # Bu önyükleme
journalctl -b -1 # Önceki önyükleme
# Boyut bilgisi
journalctl --disk-usage
logrotate ile Log Rotasyonu
Log dosyaları büyümemesi için logrotate ile periyodik dönüştürme yapılır:
# Manuel logrotate çalıştır
logrotate -f /etc/logrotate.conf
# Konfigürasyon kontrolü
logrotate -d /etc/logrotate.conf
Örnek logrotate konfigürasyonu (/etc/logrotate.d/nginx):
/var/log/nginx/*.log {
daily
missingok
rotate 14
compress
delaycompress
notifempty
create 0640 www-data adm
sharedscripts
postrotate
nginx -s reload
endscript
}
Pratik Log Analizi Örnekleri
# Son 1 saattteki 500 hatalarını say
grep "$(date -d '1 hour ago' +'%d/%b/%Y:%H')" access.log | grep " 500 " | wc -l
# Saatlik istek dağılımı
awk '{print $4}' access.log | cut -d: -f2 | sort | uniq -c
# Yavaş istekler (belirli sayfa)
grep "/api/products" access.log | awk '{if ($NF > 2000) print $0}'
# Bant genişliği tüketen URL'ler
awk '{sum[$7]+=$10} END {for (url in sum) print sum[url], url}' access.log | sort -rn | head -10
Büyükweb VDS Log Yönetimi
Büyükweb VDS sunucular ile loglarınızı gerçek zamanlı olarak izleyebilirsiniz. Fail2Ban gibi araçlarla log tabanlı otomatik güvenlik eylemleri de yapılandırılabilir.
Sonuç
Linux log yönetimi, sorun tespiti ve güvenlik izleme için vazgeçilmezdir. tail -f ile canlı log takibi, grep ve awk ile filtreleme ve journalctl ile merkezi log yönetimi, günlük sunucu yönetiminin temel araçlarıdır. Düzenli log analizi, sorunları büyümeden önce tespit etmenizi sağlar.
Pratik Linux Komutlari
Dosya Yonetimi
find ile kriterlere gore arama yapin. du -sh ile dizin boyutu, ncdu ile interaktif analiz. locate ile hizli dosya bulma. rsync ile dosya senkronizasyonu.
Surec Yonetimi
ps aux ile surecleri goruntuleyin. kill -9 ile sonlandirin. nohup ile arka planda calistirin. screen/tmux ile coklu terminal. systemctl ile servis yonetimi.
Metin Isleme
grep -r ile arama, sed ile toplu degisiklik, awk ile sutun cikarma. jq ile JSON isleme. tail -f ile canli log takibi. wc ile satir/kelime sayma.
Ag Komutlari
ss -tulpn ile portlar, curl ile HTTP istekleri, mtr ile traceroute, tcpdump ile trafik yakalama. dig ile DNS sorgulari. wget ile dosya indirme.
Zamanlama
crontab -e ile zamanlanmis gorevler. Yedekleme, temizlik otomasyonu. systemd timer ile gelismis zamanlama.
Disk Yonetimi
df -h ile kullanim, lsblk ile diskler. LVM ile esnek yonetim. RAID yapilandirmasi.
Sik Sorulan Sorular
Nereden baslamaliyim?
Temel komutlar (ls, cd, cp, mv, rm), editior (nano/vim), izinler (chmod) ve paket yonetimi (apt/dnf) ile baslayin.
Bash script nasil yazilir?
#!/bin/bash ile baslayin. Degiskenler, kosullar, donguler ogrenin. chmod +x ile calistirin.
Sonuc
Linux komut satiri sunucu yonetiminin vazgecilmez aracidir. Pratik yaparak becerilerinizi gelistirin.
En Sik Kullanilan Linux Komutlari
| Komut | Aciklama | Ornek |
|---|---|---|
| ls -la | Detayli dosya listesi | ls -la /var/www |
| grep -r | Icerik arama | grep -r "error" /var/log |
| find | Dosya bulma | find / -name "*.conf" |
| chmod | Izin degistirme | chmod 755 dosya.sh |
| chown | Sahiplik degistirme | chown www-data /var/www |
| systemctl | Servis yonetimi | systemctl restart nginx |
| journalctl | Log goruntuleme | journalctl -u nginx -f |
| df -h | Disk kullanimi | df -h / |
| free -m | Bellek kullanimi | free -m |
| ss -tulpn | Ag baglantilari | ss -tulpn |
Shell Scripting Temelleri
Bash script ile tekrarli gorevleri otomatiklestirin:
Yedekleme Scripti
Otomatik yedekleme ile veritabani ve dosyalarinizi duzenli yedekleyin. mysqldump ile veritabani, tar ile dosya arsivi olusturun.
Disk Izleme
Disk kullanimini izleyen ve esik degerini astiginda bildirim gonderen script yazin.
Log Analiz
Apache/Nginx loglarini analiz ederek en cok ziyaret edilen sayfalar ve supheli IP adresleri raporlayan script olusturun.
Profesyonel Hosting icin Onemli Kriterler
Veri Merkezi Kalitesi
Veri merkezinin tier seviyesi, sunucu barindirma kalitesini dogrudan etkiler. Tier 3 veri merkezleri yedekli guc, soğutma ve ag altyapisi ile %99.982 uptime garantisi sunar. Buyukweb'in Bursa Pendc Tier 3 veri merkezi bu standartlari karsilamaktadir.
Teknik Destek Kalitesi
7/24 ulasılabilir, Turkce ve teknik bilgi sahibi destek ekibi hosting hizmetinin vazgecilmez parcasidir. E-posta, canli destek ve telefon kanallarindan hizli yanit almak ozellikle is surekliligi acisından kritiktir.
Olceklenebilirlik
Isletmeniz buyudukce hosting ihtiyaclariniz da degisir. Paylasimli hostingten VDS'e, VDS'den dedicated sunucuya sorunsuz gecis yapabilmek uzun vadeli planlamaniz icin onemlidir. Buyukweb tum bu gecis sureclerini ucretsiz olarak yonetir.
Yedekleme ve Felaket Kurtarma
Gunluk otomatik yedekleme, tek tikla geri yukleme ve uzak yedekleme secenekleri veri guvenliginiz icin sart. JetBackup ile profesyonel yedekleme cozumu tum Buyukweb hosting paketlerinde standarttir.
Guvenlik Katmanlari
SSL sertifikasi, WAF korumasi, malware tarama, DDoS korumasi ve guvenlik duvari - tum bu katmanlar birlikte calisiarak web sitenizi korur. Buyukweb bu guvenliklerin hepsini standart olarak sunar.
Etiketler:

