Neler yeni
MEGAForum - Teknoloji Forumu

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı yada giriş yapmalısınız. Forum üye olmak tamamen ücretsizdir.

GNU/Linux Dağıtımlarında Hasarlı Disk Kontrol Ve Düzeltme İşlemleri

TRWE_2012

لِيَغْفِرَ لَكَ اللّٰهُ مَا تَقَدَّمَ مِنْ ذَنْبِك
Moderatör
Konum
BERTUNA
  • Üyelik Tarihi
    2 Haz 2020
  • Mesajlar
    5,277
  • MFC Puanı
    15,990
Merhabalar

Debian temelli bir dağıtıma sahip iseniz yada debian'ın kendisine sahipseniz, o zaman siz çok şanslı bir linux pc kullanıcısınız demektir.Neden böyle cümleye giriş yaptığımı düşüneneler'e hemen bir cevap verelim.

Unix sistemleri , 1970'li yıllar'dan beri esnek bir yapıya sahiptir.Özellikle, 1981 yılında Microsoft Windows İşletim Sistemlerinin ortaya çıkmasıyla Unix, Lunix'e evrilmiş , daha sonra ki yıllar'da Linux, M-Linux özelliği kazanmıştır.Peki M-Linux kavramı nedir? Aslında bu kavramı ben kendim türettim.Anlamı Modern Masaüstü Kabuk Yönetimi olan (GNOME gibi) Çağdaş İşletim Sistemi demektir.

M-Linux'lardan kendi içinde evrilleşmiş ve hard disk yönetimleri ilk hallerine değişikliğe gidilmiştir.

Aşağıdaki anlatımda verilenler bugün , bizzat tarafımdan uygulanan hard disk kontrol mekanizmalarıdır.

1.Senaryosal Anlatım:

Diyelim ki sisteminizle çalışmalar yaparken, nedeni belirsiz dosya sistemi hatası aldınız ve buna bir anlam veremediniz o zaman hemen, çalışmanızı kayıt edin ve bir terminal penceresi açın sudo-s komutu ile "root kullanıcı haklarını" üzerinize alın....Sonra komut satırına aşağıdaki çıktı gibi

Kod:
fsck.ext4 -f -v /dev/sdaX (X:Sizin diskinizin bölüm numarası)
yazın.Aynen aşağıdaki gibi....(Tabii bu tüm işlemleri kullandığınız dağıtımın LİVE DVD'sinde sistemi açarak yapın)

Kod:
root@ubuntu-studio:~# fsck.ext4 -f -v /dev/sda2
e2fsck 1.42.13 (17-May-2015)
1. geçiş: düğümler, bloklar ve uzunluklar denetleniyor
Geçiş 2: Dizin yapısı denetleniyor
Geçiş 3: Dizin bağlanabilirliği denetleniyor
Geçiş 4: Başvuru sayısı denetleniyor
5. Geçiş: grup özet bilgileri denetleniyor

      366102 inodes used (3.81%, out of 9617408)
26 non-contiguous files (0.0%)
545 non-contiguous directories (0.1%)
# of inodes with ind/dind/tind blocks: 0/0/0
Extent depth histogram: 308098/26
3708055 blocks used (9.64%, out of 38451968)
0 bad blocks
1 large file

      267215 regular files
32059 directories
55 character device files
25 block device files
0 fifos
26 links
66736 symbolic links (57887 fast symbolic links)
3 sockets
------------
366119 files

Bu yukarıdaki çıktı da önemli olan yerler;

26 non-contiguous files (0.0%)
545 non-contiguous directories (0.1%)
0 bad blocks


bölümleridir.

non-contiguous files/directories ifadeleri sistemin bazı bloklarının da dosya ve dizin yapılarının dağınık olduğunu gösterir.Bu durum da yapabileceğiniz iki işlem var.Birinci kapsamlı bir sistem temizliği, ikincisi disk birleştirme.....Bu değerler bende önceleri 1000'ler ifade ediliyordu....Şimdi ise 26/545 oldu.

Eğer diskiniz de bozuk sektör varsa bunlar "bad blocks " olarak ifade edilir.Allah'a (c.c) şükürler olsun ki bende bad sektör oluşumu ya çok az yada yok ....(sadece 2,031,1661 adet bozuk sektör var ve bunlar disk üzerinde mühürlü)

Windows OS Sistemini kullananlar bilir.MS-DOS Komut sisteminde chkdsk.exe diye bir dış komut exe dosyası vardır.Önceden chkdsk.exe yerine scandisk.exe kullanılırdı. Her neyse bu chkdks.exe ile ;

Kod:
C:\Windows\System32\chkdsk C:  /r /v (r:repair)
(V: raporlama) yapılırdı.

Debian temelli dağıtımlarda aynen buna benzer bir disk kontrol mekanizması bulunmaktadır.

Komut dizilim kalıbı;

Kod:
fsck.extY -fn /dev/sdaX
'dir

Burada ;

1.extY ifadesindeki Y , sizin diskinizin dosya sistemi ext2,3,4 birisi
2.sdaX ifadesindeki X , sizin diskinizin bölüm numarası 2,3,4,5 gibi....

Aşağıdaki çıktıya bakın...

Kod:
root@ubuntu-studio:~# fsck.ext4 -fn /dev/sda2
e2fsck 1.42.13 (17-May-2015)
1. geçiş: düğümler, bloklar ve uzunluklar denetleniyor
Geçiş 2: Dizin yapısı denetleniyor
Geçiş 3: Dizin bağlanabilirliği denetleniyor
Geçiş 4: Başvuru sayısı denetleniyor
5. Geçiş: grup özet bilgileri denetleniyor
/dev/sda2: 366102/9617408 files (0.2% non-contiguous), 3708055/38451968 blocks

Bu çıktıda dikkat edeceğiniz bölüm, "(0.2% non-contiguous)," bölümü olup bu sabit parçalanma miktarını göstermektedir.Yani bunu altına inmek bu 160 GB'lık S-ATA-II , Raid 2.0 karakterli 5400 RPM'li disk disk için mümkün değildir.Eğer bu %0.2'lik değer artmaya başlarsa disk'te dosya ve dizin parçalanması artmaya başlamış demektir.

Tabii bu tüm işlemler ilgili diskin, sisteme "BAĞLI DEĞİL İKEN" yapılabilir.Eğer disk sistem'e bağlı iken yaparsanız aşağıdaki gibi hata mesajı alırsınız.

Kod:
root@ubuntu-studio:~# fsck.ext4 -fn /dev/sda2
e2fsck 1.42.13 (17-May-2015)
Warning! /dev/sda2 is mounted.
Uyarı: Dosya sistemi salt-oku kipinde denetlendiğinden
günlük dosyasına göre kurtarma atlanıyor.
1. geçiş: düğümler, bloklar ve uzunluklar denetleniyor
Geçiş 2: Dizin yapısı denetleniyor
Geçiş 3: Dizin bağlanabilirliği denetleniyor
Geçiş 4: Başvuru sayısı denetleniyor
5. Geçiş: grup özet bilgileri denetleniyor
/dev/sda2: 366102/9617408 files (0.2% non-contiguous), 3708055/38451968

Yukarıdaki işlemde "Warning! /dev/sda2 is mounted." ifadesi geçmekte....Ardından "Uyarı
: Dosya sistemi salt-oku kipinde denetlendiğinden günlük dosyasına göre kurtarma atlanıyor." ifadesi geliyor.

Aynısı;

Kod:
root@ubuntu-studio:~# fsck.ext4 -f -v /dev/sda2
e2fsck 1.42.13 (17-May-2015)
/dev/sda2 is mounted.
e2fsck: Devam edilemiyor. çıkılıyor.

içinde geçerli......

2.Senaryosal Anlatım:

Diyelim ki sizin diskinizde bad sector (kötü küme, yada hasarlı küme ) var diyelim ve bunu yazılımsal olarak düzeltmek istiyorsunuz , o zaman şu komut yapısını kullanmalısınız.

Kod:
# badblocks /dev/sdaX
Bu komutu uygulanması 30 dk ile 60 dk arasında zaman almakta.....Bu süre zarfından pc'nizi (masaüstü/dizüstü) atıl (kendi haline bırakma) bırakın.

Eğer 30-60 dk. sonunda komut (# badblocks /dev/sdaX) alt satır da bir ÇIKTI üretmiyorsa , diskiniz bad sektör yönünden sorunsuz demektir.Aşağıdaki çıktıya bakınız.

Kod:
root@ubuntu-studio:~# badblocks /dev/sda2
root@ubuntu-studio:~# (ÇIKTI YOK)

Bu olumlu durumun tersi olsaydı o zaman ne yapılacak....Yapılacak olan diskinizdeki hatalı blokların sayısı tamir edilerek en aza indirilmesi ve tamiri mümkün olmayanlarında "MÜHÜRLENMESİ"dir.

Linux'da bu işlemi;

Kod:
# fsck -f -V -Y -o /dev/sdaX
komut kalıbı üstlenmektedir.

# fsck -f -V -Y -o /dev/sdaX ifadesindeki parametrelerin anlamları aşağıda verilmiştir.


Kod:
-p                        Hiç soru sormadan sistem otomatik onarılır
-n dosya sistemi salt-okunur açılır. Denetim
sırasında tüm sorulara HAYIR cevabı verildiği varsayılır.
-y Denetim sırasında tüm sorulara EVET cevabı verildiği varsayılır.
-c varsa hatalı bloklar bulunur ve hatalı bloklar listesine eklenir
-f disk bölümü temiz bile olsa denetim yapılır
-v ayrıntılı bilgi verilir
-b superblok normal süperblok yerine belirtilen kullanılır
-B blokboyu süperblok aranırken kullanılan blok boyu yerine belirtilen kullanılır
-j dış-günlük-aygıtı günlük dosyasının aranacağı aygıt belirtilir
-l hatalı_bloklar_dosyası belirtilen dosyadaki hatalı bloklar listeye eklenir
-L hatalı_bloklar_dosyası hatalı bloklar listesi belirtilen dosyadakiler ile oluşturulur

En genel komut yapısı:

Kod:
fsck.ext4: invalid option -- 'Y'
Usage: fsck.ext4 [-panyrcdfvtDFV] [-b superblock] [-B blocksize]
[-I inode_buffer_blocks] [-P process_inode_size]
[-l|-L bad_blocks_file] [-C fd] [-j external_journal]
[-E extended-options] device

Şimdi bu komutun özelleştirilmiş halinin çıktısı aşağıda verilmiştir.

Kod:
root@ubuntu-studio:~# fsck -p -c -v -l /dev/sda2
fsck from util-linux 2.27.1
/dev/sda2: Updating bad block inode.

      366102 inodes used (3.81%, out of 9617408)
26 non-contiguous files (0.0%)
545 non-contiguous directories (0.1%)
# of inodes with ind/dind/tind blocks: 0/0/0
Extent depth histogram: 308098/26
3708055 blocks used (9.64%, out of 38451968)
0 bad blocks
1 large file

      267215 regular files
32059 directories
55 character device files
25 block device files
0 fifos
26 links
66736 symbolic links (57887 fast symbolic links)
3 sockets
------------
366119 files


Ardından başka bir çeşiti uygulanır.


Kod:
root@ubuntu-studio:~# e2fsck -f -y -v /dev/sda2
e2fsck 1.42.13 (17-May-2015)
1. geçiş: düğümler, bloklar ve uzunluklar denetleniyor
Geçiş 2: Dizin yapısı denetleniyor
Geçiş 3: Dizin bağlanabilirliği denetleniyor
Geçiş 4: Başvuru sayısı denetleniyor
5. Geçiş: grup özet bilgileri denetleniyor

      366102 inodes used (3.81%, out of 9617408)
26 non-contiguous files (0.0%)
545 non-contiguous directories (0.1%)
# of inodes with ind/dind/tind blocks: 0/0/0
Extent depth histogram: 308098/26
3708055 blocks used (9.64%, out of 38451968)
0 bad blocks
1 large file

      267215 regular files
32059 directories
55 character device files
25 block device files
0 fifos
26 links
66736 symbolic links (57887 fast symbolic links)
3 sockets
------------
366119 files


Sonra bloklar yeniden düzenlenir yani hizalanır.

Kod:
root@ubuntu-studio:~# resize2fs /dev/sda2
resize2fs 1.42.13 (17-May-2015)
The filesystem is already 38451968 (4k) blocks long. Nothing to do!

En son olarak disk birleştirilir.

Kod:
root@ubuntu-studio:~# e4defrag /dev/sda2

Son olarak komut satırında
Kod:
reboot force
komutu verilir ve sistem live dvd'den yeniden gerçek sistem'e başlatılır.

Tebrikler diskinizi onarmayı, birleştirmeyi öğrendiğiniz.
 
Üst Alt