Linux Hata Onarımı İçin fsck Komutu Nasıl Kullanılır?

Linux dosya sistemlerinin amacı, verileri güvenli şekilde saklamak ve gerekli olduğunda kurtarmayı sağlamaktır. Zamanla bazı bozulmalar meydana gelebilir ve belirli disk bölümlerine ulaşım mümkün olmayabilir. Bu tutarsızlıkları çözmek için çoğu senaryoda fsck aracı tercih edilir.
Daha önce Sanal Sunucularda Kullanılan İşletim Sistemlerini incelemiştik. Şimdi odağımızı Linux’a çevirip disk kaynaklı sorunların çözümünde fsck’nin nasıl kullanılacağını göstereceğiz.

Linux’ta fsck gerektiren senaryolar

fsck, dosya sistemi yapısında hata olabileceğine dair belirtiler görüldüğünde tercih edilir.

  • İşletim sistemi açılışı başarısız oluyorsa
  • Dosya bozulmaları ve giriş çıkış hataları tekrar ediyorsa
  • Harici depolama aygıtları beklenen şekilde davranmıyorsa
    Bu koşullar, fsck ile bütünlük denetimi ve gerekirse onarım yapmanız gerektiğine işaret eder.

fsck Komutunun Parametreleri

fsck yalnızca root yetkisiyle çalıştırılabilir. Kullanıa göre farklı seçenekler sunar.

  • -A/etc/fstab dosyasında tanımlı tüm bölümleri kontrol eder.
  • -C → İşlem ilerlemesini gösterir.
  • -l → Kontrol sırasında bölümü kilitleyerek başka işlemleri engeller.
  • -M → Bağlı olan dosya sistemlerini atlar.
  • -N → Ne yapılacağını listeler değişiklik yapmaz.
  • -P → Dosya sistemlerini paralel kontrol eder.
  • -R → Root bölümünü hariç tutar
  • -r → Kontrol edilen cihazların istatistiklerini döndürür.
  • -T → Başlık bilgisini gizler.
  • -t → Belirli bir dosya sistemi türünü (ör. ext4, xfs) kontrol eder.
  • -V → Ayrıntılı çıktı verir.

fsck öncesi unmount gereksinimi

Bir disk bölümünü fsck ile taramak için öncelikle bölümün bağlı olmaması gerekir. Örnek:

Mounted bir bölümde fsck çalıştırmak risklidir ve hataları büyütebilir. Bu nedenle önce unmount işlemi yapılmalıdır.

fsck Çıkış Kodları

Her fsck çalıştırmasından sonra belirli bir çıkış kodu döner:

  • 0 → Hata yok
  • 1 → Hatalar düzeltildi
  • 2 → Yeniden başlatma gerekli
  • 4 → Hatalar giderilemedi
  • 8 → Çalışma hatası
  • 16 → Sözdizimi veya kullanım hatası
  • 32 → İşlem kullanıcı tarafından iptal edildi
  • 128 → Paylaşılan kütüphane hatası

Bu kodlar sayesinde işlem sonucunu kolayca değerlendirebilirsiniz

Eğer çok sayıda hata varsa, her biri için onay vermek yerine fsck’nin otomatik onarım yapması sağlanabilir:

Tüm diskler için:

Burada -y parametresi, tüm hatalara otomatik olarak “yes” cevabı verir.

Kök Bölümde fsck Yapılandırması

Kök dosya sistemi bağlıyken fsck çalıştırılamaz. Bunun için iki yöntem bulunur:

Başlangıçta fsck’yi Yüklemek

Sistem yeniden başlatıldığında fsck otomatik olarak çalışır. İşlem bitince dosya kaldırılmalıdır:

Kurtarma Modunda fsck Kullanımı

Sistemi yeniden başlatalım.

GRUB menüsünden Gelişmiş seçenekler → Kurtarma modunu seçelim.

Açılan menüden fsck’yi çalıştıralım.

Kontrol tamamlandıktan sonra normal önyüklemeye geçebiliriz.

Sık Sorulan Sorular

Superblock hatası nedir?

Superblock dosya sisteminin temel yapısını tutar. Bozulduğunda disk mount edilemez.

sudo fsck.ext4 -b <yedek_superblock_numarası> /dev/sdXN

Superblock numaraları dumpe2fs /dev/sdXN | grep superblock komutuyla öğrenilebilir.

fsck her açılışta otomatik çalışıyor?

Bu ayarlar /etc/fstab veya tune2fs ile kontrol edilir.

sudo tune2fs -c 30 /dev/sdXN   # her 30 açılışta bir kontrol
sudo tune2fs -i 7d /dev/sdXN   # her 7 günde bir kontrol

fsck “device is busy” hatası verirse ne yapılmalı?

Bu, bölümün bağlı olduğunu gösterir. Önce bölümü ayırmak gerekir:

sudo umount /dev/sdXN

Eğer root bölümü ise canlı USB veya recovery mod üzerinden işlem yapılmalıdır.

Hangi dosya sistemi için hangi araç kullanılmalı?

  • Ext2/3/4 → fsck.ext4 veya e2fsck
  • XFS → xfs_repair
  • Btrfs → btrfs check / btrfs scrub
  • FAT32 → fsck.vfat

Root bölümü nasıl kontrol edilir?

Root bağlı olduğu için normal şekilde kontrol edilemez. Bunun yerine canlı USB ile açmak ya da önyüklemede touch /forcefsck komutunu kullanarak bir sonraki başlatmada otomatik kontrol yapılmasını sağlamak gerekir.

Yorum yapın