Skip to content

fsck: Linux Dosya Sisteminin Doktoru

Published: at 10:00 PMSuggest an edit

Selam arkadaşlar! Bugün Linux dünyasının en kritik ama bir o kadar da korkulan komutlarından birini konuşacağız: fsck (File System Check). Sisteminiz boot etmiyorsa, disk hatası alıyorsanız ya da “file system corrupted” mesajı görüyorsanız, fsck sizin en iyi dostunuz olacak!

fsck Nedir? Ne İşe Yarar?

fsck, “File System Consistency Check” kelimelerinin kısaltması. Türkçesiyle dosya sistemi tutarlılık kontrolü. Windows’taki chkdsk’nın Linux karşılığı diyebiliriz. Ama çok daha güçlü!

Dosya sistemleri bazen bozulabiliyor arkadaşlar. Elektrik kesilmesi, sistem çökmesi, hardware arızası, kötü sector’lar… Bunlar dosya sisteminde inconsistency’lere yol açabiliyor. İşte fsck bu tutarsızlıkları bulup düzeltiyor.

Ne Zaman fsck Kullanmalıyız?

Otomatik çalıştığı durumlar:

Manuel çalıştırmanız gereken durumlar:

fsck’nin Çalışma Mantığı

fsck dosya sistemini katman katman kontrol ediyor:

Superblock kontrolü: Dosya sisteminin meta verilerini barındıran superblock’u kontrol eder. Bozuksa backup’tan restore eder.

Inode kontrolü: Her dosya ve dizinin inode’unu kontrol eder. Orphan inode’ları bulur, link count’ları düzeltir.

Block kontrolü: Used/free block’ları kontrol eder. Duplicate block’ları tespit eder, bad block’ları işaretler.

Directory structure: Dizin yapısını kontrol eder. Loop’ları tespit eder, kayıp dizinleri lost+found’a taşır.

Reference counting: Her dosyanın kaç yerden referans edildiğini kontrol eder.

Kritik Kural: Unmounted Filesystem!

ÇOK ÖNEMLİ: fsck’yi ASLA mounted bir filesystem’de çalıştırmayın! Veri kaybına yol açar. Root partition için single user mode veya live USB kullanın.

Basit Kullanım Örnekleri

Filesystem kontrolü (dry run):

# Check without fixing (safe to run)
sudo fsck -n /dev/sda1

# Verbose output for details
sudo fsck -v /dev/sda1

# Check all filesystems in /etc/fstab
sudo fsck -A

Otomatik onarım:

# Auto repair (answer yes to all)
sudo fsck -y /dev/sda1

# Force check even if filesystem seems clean
sudo fsck -f /dev/sda1

# Check and fix bad blocks
sudo fsck -c /dev/sda1

fsck Tipleri

Linux’ta farklı dosya sistemleri için farklı fsck versiyonları var:

fsck otomatik olarak doğru versiyonu seçer!

Recovery Mode’da fsck

Sistem boot etmiyorsa:

  1. GRUB menüsünde recovery mode seçin
  2. Root shell’e düşün
  3. Filesystem’i read-only mount edin
  4. fsck çalıştırın
  5. Reboot edin

Live USB daha güvenli bir seçenek - sistemi dışarıdan boot edip, rahatça fsck çalıştırabilirsiniz.

fsck Exit Code’ları

fsck bittiğinde döndürdüğü kod önemli:

Birden fazla problem varsa, kodlar toplanır (bitwise OR).

lost+found Dizini

fsck, sahipsiz dosyaları lost+found dizinine koyar. Her partition’ın root’unda bir lost+found dizini vardır. İçinde garip isimli dosyalar bulursanız, bunlar fsck’nin kurtardığı dosyalardır. İnceleyip, gerekli olanları geri alabilirsiniz.

Proaktif Önlemler

Tune2fs ile kontrol ayarları:

Smart monitoring:

Düzenli backup:

Tehlikeli Durumlar

Force fsck dikkatli kullanın: -f flag’i clean görünen filesystem’i bile kontrol eder. Gereksiz yere kullanmayın.

fsck.ext2 on ext4: Yanlış fsck tipi kullanmak felaket olabilir! fsck otomatik seçsin.

Interrupted fsck: fsck yarıda kesilirse, filesystem daha kötü duruma gelebilir. UPS kullanın!

Sonuç

fsck, Linux sistem yöneticisinin cephanesindeki en güçlü silahlardan biri. Doğru kullanıldığında hayat kurtarır, yanlış kullanıldığında felaket olabilir.

Benim tavsiyem: fsck’yi tanıyın ama rutin kullanmayın. Modern filesystem’ler ve journaling sayesinde nadiren ihtiyaç duyarsınız. Ama o “nadir” an geldiğinde, fsck’nin nasıl çalıştığını bilmek kritik önem taşır.

Sistem yönetimi serüveninde fsck bilgisi olmazsa olmaz. Umarım hiç ihtiyacınız olmaz ama olursa, artık ne yapacağınızı biliyorsunuz!



Previous Post
RabbitMQ: Message Queuing ve Microservices İletişimi
Next Post
Vector Database: AI Çağının Veri Depolama Devrimi