Linux Sunucularda fsck Komutu ile Veri Kurtarma

Linux’ta kullanılan dosya sistemleri, verilerin güvenli saklanmasına ve ihtiyaç duyulduğunda geri yüklenmesine hizmet eder. Bununla birlikte zaman içinde hatalar oluşabilir ve bazı bölümlere erişim kısıtlanabilir. Bu uyumsuzlukların giderilmesinde çoğu zaman fsck aracı ön plana çıkar.
Bir önceki içerikte VDS Sunucular İçin En Çok Tercih Edilen İşletim Sistemlerini ele almıştık. Bu yazıda, Linux sistemlerde disk problemlerinin çözümünde fsck’nin uygulamasını adım adım işleyeceğiz.

Linux’ta fsck Ne Zaman Kullanılmalı?

Dosya sistemi kararlılığını yitirdiğinde fsck devreye sokulmalıdır.

  • Sistem boot sürecini tamamlayamıyorsa
  • Sık aralıklarla G/Ç hataları ve veri bozulmaları yaşanıyorsa
  • USB bellek ya da SD kart gibi ortamlar düzgün tanınmıyorsa
    Bu belirtiler, dosya sistemi tutarsızlıklarını fsck yardımıyla kontrol edip düzeltmeniz gerektiğini gösterir.

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.

Linux’u fsck ile Kontrol Etme

Bir disk bölümünü taramak için önce bağlı olmadığından emin olmak gerekir. Örneğin:

sudo umount /dev/sdb
sudo fsck /dev/sdb

Bağlı bölümler üzerinde fsck çalıştırmak, hataları artırabilir. 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:

sudo fsck -y /dev/sdb

Tüm diskler için:

sudo fsck -AR -y

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

sudo touch /forcefsck
sudo reboot

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

sudo rm /forcefsck

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