Linux'ta Dosya Sistemi Hatalarını Onarmak için 'fsck' Nasıl Kullanılır


Linux Dosya Sistemleri, verilerin nasıl saklandığını ve kurtarıldığını organize etmekten sorumludur. Öyle ya da böyle, zamanla dosya sistemi bozulabilir ve bazı bölümlerine erişilemeyebilir. Dosya sisteminizde bu tür bir tutarsızlık gelişirse bütünlüğünü doğrulamanız önerilir.

Bu, önyükleme sırasında kök dosya sistemini otomatik olarak kontrol eden veya manuel olarak çalıştıran fsck (dosya sistemi tutarlılık kontrolü) adı verilen bir sistem yardımcı programı aracılığıyla tamamlanabilir.

Bu makalede, Linux disk hatalarını onarmanıza yardımcı olmak için fsck komutunu ve kullanımını inceleyeceğiz.

Linux'ta fsck Komutu Ne Zaman Kullanılır?

fsck'i çalıştırmak isteyeceğiniz farklı senaryolar vardır. İşte birkaç örnek:

  • Sistem önyükleme yapamıyor.
  • Sistemdeki dosyalar bozulur (genellikle giriş/çıkış hatası görebilirsiniz).
  • Takılı sürücü (flash sürücüler/SD kartlar dahil) beklendiği gibi çalışmıyor.

fsck Komut Seçenekleri

fsck komutunun süper kullanıcı ayrıcalıklarıyla veya root ile çalıştırılması gerekir. Farklı argümanlarla kullanabilirsiniz. Kullanımları sizin özel durumunuza bağlıdır. Aşağıda daha önemli seçeneklerden bazılarını göreceksiniz:

  • -A – Tüm dosya sistemlerini kontrol etmek için kullanılır. Liste /etc/fstab adresinden alınmıştır.
  • -C – İlerleme çubuğunu göster.
  • -l – Denetim sırasında başka hiçbir programın bölümü kullanmaya çalışmayacağını garanti etmek için cihazı kilitler.
  • -M – Takılan dosya sistemlerini kontrol etmeyin.
  • -N – Yalnızca ne yapılacağını gösterir; gerçek bir değişiklik yapılmaz.
  • -P – Kök dahil dosya sistemlerini paralel olarak kontrol etmek istiyorsanız.
  • -R – Kök dosya sistemini kontrol etmeyin. Bu yalnızca '-A' ile kullanışlıdır.
  • -r – Kontrol edilen her cihaz için istatistik sağlar.
  • -T – Başlığı göstermez.
  • -t – Kontrol edilecek Linux dosya sistemi türlerini özel olarak belirtin. Türler virgülle ayrılmış listeler olabilir.
  • -V – Ne yapıldığına dair bir açıklama sağlayın.

Linux Dosya Sistemi Hatalarını Onarmak için fsck Komutunu Çalıştırın

fsck'i çalıştırmak için kontrol edeceğiniz bölümün takılı olmadığından emin olmanız gerekir. Bu makalenin amacı doğrultusunda, /mnt dizinine monte edilmiş ikinci sürücümü /dev/sdb kullanacağım.

Bölüm bağlandığında fsck'i çalıştırmayı denediğimde şöyle olur.

fsck /dev/sdb

Bunu önlemek için bölümün bağlantısını kesin.

umount /dev/sdb

Daha sonra fsck güvenle çalıştırılabilir.

fsck /dev/sdb

Fsck Çıkış Kodlarını Anlama

fsck'i çalıştırdıktan sonra bir çıkış kodu döndürecektir. Bu kodlar fsck'in kılavuzunda aşağıdaki çalıştırılarak görülebilir:

man fsck

0      No errors
1      Filesystem errors corrected
2      System should be rebooted
4      Filesystem errors were left uncorrected
8      Operational error
16     Usage or syntax error
32     Checking canceled by user request
128    Shared-library error            

Fsck Linux Dosya Sistemini Onarma

Bazen bir dosya sisteminde birden fazla hata bulunabilir. Bu gibi durumlarda fsck'in otomatik olarak hataları düzeltmeye çalışmasını isteyebilirsiniz. Bu şu şekilde yapılabilir:

fsck -y /dev/sdb

-y işareti, fsck'ten bir hatayı düzeltmek için yapılan tüm istemlere otomatik olarak “yes” işareti koyar.

Benzer şekilde, aynı işlemi tüm dosya sistemlerinde (root olmadan) çalıştırabilirsiniz:

fsck -AR -y 

Linux Kök Bölümünde fsck Nasıl Çalıştırılır

Bazı durumlarda sisteminizin kök bölümünde fsck'i çalıştırmanız gerekebilir. Bölüm takılıyken fsck'i çalıştıramayacağınız için şu seçeneklerden birini deneyebilirsiniz:

  • Sistem önyüklemesinde fsck'yi zorla
  • Fsck'i kurtarma modunda çalıştırın

Her iki durumu da inceleyeceğiz.

Sistem Önyüklemesinde Fsck'i Zorla

Bunu tamamlamak nispeten kolaydır; yapmanız gereken tek şey, sisteminizin kök bölümünde forcefsck adlı bir dosya oluşturmaktır. Aşağıdaki komutu kullanın:

touch /forcefsck

Daha sonra sisteminizi yeniden başlatmayı zorlayabilir veya planlayabilirsiniz. Bir sonraki başlatma sırasında fsck gerçekleştirilecektir. Kesinti süresi kritikse bunu dikkatli bir şekilde planlamanız önerilir; çünkü sisteminizde çok sayıda kullanılan inode varsa fsck biraz daha zaman alabilir.

Sisteminiz önyüklendikten sonra dosyanın hala mevcut olup olmadığını kontrol edin:

ls /forcefsck

Eğer öyleyse, her sistem açılışında fsck'ten kaçınmak için onu kaldırmak isteyebilirsiniz.

Fsck'i Kurtarma Modunda çalıştırın

fsck'i kurtarma modunda çalıştırmak birkaç adım daha gerektirir. Öncelikle sisteminizi yeniden başlatmaya hazırlayın. MySQL/MariaDB vb. gibi kritik hizmetleri durdurun ve yazın.

reboot

Önyükleme sırasında grub menüsünün görünmesi için shift tuşunu basılı tutun. “Gelişmiş seçenekler”i seçin.

Ardından “Kurtarma modu”nu seçin.

Bir sonraki menüde “fsck” seçeneğini seçin.

/ dosya sisteminizin yeniden bağlanmasını isteyip istemediğiniz sorulacaktır. “evet”'i seçin.

Buna benzer bir şey görmelisiniz.

Daha sonra “Devam Et”'i seçerek normal önyüklemeye devam edebilirsiniz.

Çözüm

Bu eğitimde fsck'in nasıl kullanılacağını ve farklı Linux dosya sistemlerinde tutarlılık kontrollerinin nasıl çalıştırılacağını öğrendiniz. fsck hakkında herhangi bir sorunuz varsa lütfen bunları aşağıdaki yorum bölümünde göndermekten çekinmeyin.