fsck (Dosya Sistemi Tutarlılık Kontrolü anlamına gelir), bir veya daha fazla Linux dosya sistemini kontrol etmek ve onarmak için kullanılır.
Bu denetim, bir dosya sistemi tutarsızlığı algılandığında önyükleme sırasında otomatik olarak çalışır. Ayrıca, gerektiğinde manuel olarak da çalıştırılabilir.
Sistem önyüklenemediğinde veya bir bölüm bağlanamadığında ya da salt okunur hale geldiğinde bozuk dosya sistemlerini onarmak için fsck komutunu kullanabilirsiniz.
Bu yazıda bozuk bir dosya sistemini onarmak için Linux’ta ‘fsck’ veya ‘e2fsck’ komutunun nasıl kullanılacağını göreceğiz.
Aklınızda olsun:
- Dosya sisteminde herhangi bir veri bozulmasını önlemek için fsck’yi bağlantısız bir dosya sisteminde yürütün.
- Daha büyük dosya sistemlerinde, sistem hızına ve disk boyutlarına bağlı olarak fsck’nin çalışması uzun sürebilir.
Dosya sistemi kontrolü tamamlandığında, fsck aşağıdaki çıkış kodlarından birini döndürür:
Çıkış Kodu | Tanım |
---|---|
0 | No errors |
1 | Filesystem errors corrected |
2 | System should be rebooted |
4 | Filesystem errors left uncorrected |
8 | Operational error |
16 | Usage or syntax error |
32 | Checking canceled by user request |
128 | Shared-library error |
Ortak Sözdizimi:
fsck [option] [device or partition or mount point]
EXT4 Dosya Sistemini Bozmak
Aşağıdaki komutu yürüterek EXT4 dosya sistemini kasıtlı olarak bozacağız. Rastgele seçilmiş dosya sistemi meta veri bloklarını çöpe atar.
Not Edin: Lütfen bunu Üretim sunucusunda test etmeyin, çünkü bu, verilerinize büyük ölçüde zarar verebilir.
sudo umount /data
ext4 dosya sisteminin bozulması örneği
sudo dd if=/dev/zero of=/dev/sdb1 bs=10000 skip=0 count=1 1+0 records in 1+0 records out 10000 bytes (10 kB, 9.8 KiB) copied, 0.00394663 s, 2.5 MB/s
Dosya sistemini yüklemeye çalıştığınızda bozuk olduğu için aşağıdaki hata mesajını göreceksiniz.
sudo mount /data mount: /data: wrong fs type, bad option, bad superblock on /dev/sdb1, missing codepage or helper program, or other error.
Bozuk EXT4 ve EXT3 Dosya Sistemini Onarın
Çalışan bir Linux sisteminde kök olmayan bozuk bir ext3 veya ext4 dosya sistemini onarabilirsiniz. fsck, fsck.ext3 ve fsck.ext4 komutları için bir şemsiye olarak çalışır.
Not edin: Kök olmayan birimin bir kısmını bir sorun nedeniyle ayıramıyorsanız, sistemi onarmak için tek kullanıcı modunda veya kurtarma modunda önyükleyin.
Aşama 1: fsck’i çalıştırmak istediğiniz aygıtın bağlantısını kesin.
sudo umount /dev/sdb1
Aşama 2: Dosya sistemini onarmak için fsck’i çalıştırın:
sudo fsck.ext4 -p /dev/sdb1
-p
: Kullanıcı müdahalesi olmadan güvenli bir şekilde düzeltilebilecek sorunları otomatik olarak onarın.
Yukarıdaki seçenek sorunu çözmezse fsck komutunu aşağıdaki biçimde çalıştırın.
sudo fsck.ext4 -fvy /dev/sdb1 e2fsck 1.45.6 (20-Mar-2020) ext2fs_open2: Bad magic number in super-block fsck.ext4: Superblock invalid, trying backup blocks... Resize inode not valid. Recreate? yes Pass 1: Checking inodes, blocks, and sizes Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information Block bitmap differences: -65536 -65538 -(65541--65542) -(65546--65547) -(65549--65550) -(65555--65557) . . Fix? yes Free inodes count wrong for group #0 (8181, counted=8165). Fix? yes Free inodes count wrong (327669, counted=327653). Fix? yes Padding at end of inode bitmap is not set. Fix? yes /dev/sdb1: ***** FILE SYSTEM WAS MODIFIED ***** 27 inodes used (0.01%, out of 327680) 0 non-contiguous files (0.0%) 0 non-contiguous directories (0.0%) # of inodes with ind/dind/tind blocks: 0/0/0 Extent depth histogram: 19 43294 blocks used (3.30%, out of 1310464) 0 bad blocks 0 large files 16 regular files 2 directories 0 character device files 0 block device files 0 fifos 0 links 0 symbolic links (0 fast symbolic links) 0 sockets ------------ 18 files
Aşama 3: Dosya sistemi onarıldıktan sonra bölümü bağlayın.
sudo mount /dev/sdb1
2) fsck ile LVM Hacmini Onarma
fsck, standart bölümlerdeki dosya sistemleri gibi LVM mantıksal birimlerinde çalıştırılabilir. Bir LVM bölümünü onarmak için aşağıdaki prosedürü izleyin:
Aşama 1: fsck’yi çalıştırmak için belirli LVM biriminin etkin durumda olduğundan emin olun. LVM’nin durumunu kontrol etmek için şunu çalıştırın:
sudo lvscan inactive '/dev/myvg/vol01' [1.00 GiB] inherit ACTIVE '/dev/rhel/swap' [2.07 GiB] inherit ACTIVE '/dev/rhel/root' [<26.93 GiB] inherit
‘inactive’ ise, aşağıdaki komutu çalıştırarak etkinleştirin.
sudo lvchange -ay /dev/myvg/vol01 -v Activating logical volume myvg/vol01. activation/volume_list configuration setting not defined: Checking only host tags for myvg/vol01. Creating myvg-vol01 Loading table for myvg-vol01 (253:2). Resuming myvg-vol01 (253:2).
Aşama 2: fsck’i çalıştırmak istediğiniz aygıtın veya dosya sisteminin bağlantısını kesin.
sudo umount /dev/myvg/vol01
Aşama 3: Dosya sistemini onarmak için fsck’yi çalıştırın. Gerçek bir fiziksel bölümü değil, fsck’yi çalıştırmak için LVM biriminin yolunu girmelisiniz.
sudo fsck.ext4 -fvy /dev/myvg/vol01 e2fsck 1.45.6 (20-Mar-2020) /dev/myvg/vol01: clean, 24/65536 files, 14094/262144 blocks
- -f : Dosya sistemi temiz görünse bile zorla kontrol edin.
- -y : Tüm sorulara ‘evet’ yanıtı verin; e2fsck’in etkileşimsiz olarak kullanılmasına izin verir.
- -v : Verbose mode
Step-4: Dosya sistemi onarıldıktan sonra bölümü bağlayın.
sudo mount /apps
Yazının orijinalini buradan okuyabilirsiniz.
Kariyerime 26 yıl önce başladım. Windows ve Linux sistemlerinin kurulumu, yapılandırılması, yönetimi ve bakımı dahil olmak üzere birden fazla sistem üzerinde uzmanlaştım.
Açık kaynak dünyasındaki en son gelişmelerden haberdar olmaktan ve Linux hakkındaki en son araçları, özellikleri ve hizmetleri denemekten hoşlanıyorum.
Son 6 yıldır sistem ve ağ yöneticisi olarak görev yapıyorum ayrıca Pardus Dönüşüm Projesini yönetiyorum ve Pardus İşletim Sisteminin yaygınlaşması adına uğraş gösteriyorum.
Boş zamanlarımda açık kaynaklı uygulamaların Türkçe çevirisine katılıyorum ve The Document Foundation üyesiyim.