Kısa cevap: Sektöre yeni bir şeyler yazın (sıfırlar bile).
Uzun cevap
Günümüzde sabit diskler, kötü sektörleri ana bilgisayardan gizlemeye çalışır. Ana bilgisayar, sürücünün belirli bir sektör numarasının içeriğini döndürmesini ister. Normalde sürücü sektörü okur, ana makineye döndürür ve her şey yolundadır.
Sabit sürücü, okuduğu değerin geçerli olup olmadığını bilir; çünkü sürücü, okuduğu içeriğin doğru olduğunu doğrulamak için Hata düzeltme kodu (ECC) kullanır . Sürücü sektörün içeriğinin geçersiz olduğunu tespit ederse, okumayı yeniden dener. Umut, basitçe tekrar okursa doğru sektör içeriğini alabilmesidir. İyi bir değer elde edinceye kadar yeniden denemeye devam edecek veya zaman sınırına ulaşacak (resmen Komut tamamlama zaman sınırı veya CCTL olarak bilinir ).
Bu denemeler sırasında , sürücü ölü görünecek; artık komutlara cevap vermediğinden .
Yedek Sektörler
Modern sürücülerin çoğu bir dizi "yedek" sektör içerir (örneğin 1,024 yedek sektör). Sürücü bir sektörü kötü olarak algılarsa, onu kullanmayı bırakacaktır. Hasar görmüş sektöre okuma veya yazma talepleri şeffaf bir şekilde bir yedek sektöre yönlendirilecektir. Kötü bir sektöre işaret eden ve verilerini yedek bir sektöre yeniden tahsis eden bu yeniden Tahsis Olayı olarak adlandırılır . Ve yeniden tahsis edilen toplam sektör sayısı (ve dolayısıyla kaç yedek sektörünüzün kullanıldığı), Tahsis Edilen Sektör Sayısı .
Bu örnekte kendi sabit disklerimden birinin 64 kesiminin kötü olduğu tespit edildi. Bu, sürücünün 64 yedek sektörünün kullanıldığı anlamına gelir:
ID Current Worst Threshold Raw
============================= ======= ===== ========= ===
(05) Reallocated Sector Count 192 192 140 64
Aynı sabit diskte, 4 Yeniden Tahsis Olayı yaşandı . Bu, sürücünün sektörleri kötü olarak işaretlediği ve bunun yerine yedek sektörler kullandığı dört durum olduğu anlamına gelir.
ID Current Worst Threshold Raw
============================= ======= ===== ========= ===
(05) Reallocated Sector Count 192 192 140 64
(C4) Reallocated Event Count 196 196 0 4
Ya verileri okuyamazsa?
Bu yeniden okuma işlemleri, yedek parça tüketen, bilgisayarın arkasındaki tüm eylemler iyi bir şey. Bu, ana bilgisayar işletim sisteminin başarısız sektörlerle ilgilenmek zorunda olmadığı anlamına gelir. Sürücünün kendisi bu ayrıntıların üstesinden gelebilir.
Bonus Chatter : Eski günlerde, sabit diskinizde bir etiket yapıştırılmış olarak geliyordu. Bu etiket Fabrika Arıza Listesini içeriyordu ; sürücüdeki bilinen tüm kötü noktaların listesi.
Sürücünün düşük seviyeli bir formatını uyguladıysanız , kötü noktaların tüm Silindir Başı Sektör konumlarını yazmak için bir araç kullanmak zorundaydınız .
SCSI sürücülerinde IOCTL_DISK_REASSIGN_BLOCKS
, işletim sistemi algıladıktan sonra sürücüdeki kötü bir noktayı yeniden konumlandırmalarını söyleyen bir komut vardır . IDE sürücülerinde bu, işletim sisteminin müdahalesine gerek kalmadan otomatik olarak gerçekleşir.
İdeal olarak, sürücü sektörün başarısız olduğunu fark eder, verileri yedek bir sektöre taşır ve orijinal sektörü bir daha asla kullanmaz. Ancak, sürücü sektörü başarıyla okuyamazsa ne olur?
İşte Pending Sectors
bu. Sürücü, bir sektörün başarısız olduğunu tespit etti ve bir yedek parçaya yeniden gönderilmesi gerekiyor. Ancak verileri başarıyla okuyana kadar bunu yapamaz. Sürücü, bir sektörün kötü olduğunu ve yeniden ele alınması gerektiğini bildiği zaman, ancak henüz yapamıyor çünkü sektörden iyi bir okuma almak için bekliyor: Bekleyen Sektör Sayısı :
ID Current Worst Threshold Raw
============================= ======= ===== ========= ====
(05) Reallocated Sector Count 192 192 140 64
(C4) Reallocated Event Count 196 196 0 4
(C5) Current Pending Sector 100 100 0 2
Sabit sürücümde, sürücünün kötü olarak tanıdığı 2 sektör var, ancak henüz yeniden atanamıyor. Bu 'Bekleyen sektörlerden' birini okuyacak olursanız, sürücü büyük olasılıkla yeniden dener (ve yeniden dener ve yeniden dener) ve sonunda ana bilgisayar işletim sistemine bir okuma hatası verir:
Bekleyen sektörden vazgeçtiğinde yeniden tahsis edilecek
Sürücünün nihayetinde sektörü yeniden tahsis etmesinin ve başka bir yedek sektör kullanmasının iki yolu var :
- Sonunda iyi bir okuma alır
- artık sektörde ne olduğunu umursamıyorsun
Sürücü nihayet sektörü okursa, o zaman sektörü yeniden tahsis edebileceğini bilir.
Sürücünün sektörü yeniden tahsis etmesinin bir başka yolu, o sektörün içeriğinin alakasız olduğunu bilmenizdir; Artık içinde ne olduğu umrunda değil. Bunu nasıl yaptın?
Sektöre yeni bir şeyler yazarak.
Eğer gelen veya yazma bir sabit diskte bir sektör, okumak her durumda, okuma / yazma zorunda tamamı 512 bayt sektörü 1 . Bir sektörün sadece bir kısmını yazamazsınız . İşletim sistemi bir sektöre veri yazdığında, 512 baytın tamamını belirtmesi gerekir. Sabit sürücüye, bu yeni içeriğin bu bozuk kesimin yerini almasını istediğinizi söylerseniz, sürücü, şu anda kötü kesimde ne olduğunu umursamadığınızı bile bilir. Daha sonra kötü bir sektörü yedek parçalardan birine yeniden tahsis edebilir ve sektör artık Beklemede değildir .
Bu yüzden insanlar bazılarına sahip Current Pending Sectors
olmak istediklerinde, ortak tavsiyelerin tümü sürücüye sıfır yazmak için bir araç (Western Digital'in Data LifeGuard gibi) kullanılmasıdır.
Sürücüdeki her sektöre sıfır yazarak, diske sonunda tüm sinir bozucu bekleyen sektörleri yeniden tahsis edebileceğini söylüyorsunuz . Silin sonra tüm senin Pending Sectors
olacak Reallocated Sectors
:
ID Current Worst Threshold Raw
============================= ======= ===== ========= ====
(05) Reallocated Sector Count 192 192 140 66
(C4) Reallocated Event Count 196 196 0 5
(C5) Current Pending Sector 100 100 0 0
Not: Western Digital'in Data LifeGuard gibi bir "düşük seviye" aracı kullanmanız kesinlikle gerekli değildir. Windows'a bir birimin tam formatını (yani Hızlı olmayan format) gerçekleştirmesini söylerseniz, birimdeki her sektöre sıfır yazar.
İşletim sistemi dosyalama sistemi sektörleri kötü olarak işaretlemeyi desteklemektedir
Bu bilgiyle donanmış olarak, kafa karıştırıcı bir senaryoyu inceleyeceğiz.
Integrated Drive Electronics'in (IDE) ortaya çıkmasından önce, ana işletim sistemi kötü sektörleri tespit etmekten, okumaları yeniden denemekten, verileri başka bir sektöre taşımaktan ve eski sektörleri kötü olarak işaretlemekten sorumluydu.
chkdsk /r c:
Ana bilgisayar işletim sistemini kullanarak çalıştırıyorsanız , "beklemede" olan sektörlerin kötü olduğunu kabul eder ve bunları kötü olarak işaretler ve bir daha kullanmaya çalışmaz :
> C:\Windows\system32>chkdsk /r c:
The type of the file system is NTFS.
Volume label is OS.
12 KB in bad sectors.
Öyleyse, 512 bayt sektördeki bir sabit disk, 12 KB 'Bekleyen Sektörler' veya bu örnekte, işletim sistemi tarafından 'kötü sektörler' olarak işaretlenmiş olan 12KB olduğu varsayılarak, bir SMART disk yardımcı programı tarafından gösterildiği gibi, ondalık 24 veya onaltılık 0x18 Kristal Disk Bilgisi gibi:
ID Attribute Name Current Worst Threshold Raw
============================= ======= ===== ========= ====
(C5) Current Pending Sector 100 100 0 18
Not : Western Digital'in Data LifeGuard v1.31 (en son 8/31/2017 itibariyle) yardımcı programı mevcut SMART 'Raw' sayaç değerlerini doğru göstermiyor gibi görünüyor.
Şimdi tam bir biçim uygularsanız (birimdeki her sektöre sıfır yazan) :
Bu, Pending
yeniden tahsis edilecek olan tüm sektörleri ifade eder . Dosyalama sisteminin bu sektörleri tekrar kullanması artık güvenlidir. Dosyalama sistemine bu sektörlerin artık “kötü” olmadığını bildirmek için , kötü sektörleri yeniden değerlendireceği bir seçenek kullanıyorsunuz :
>chkdsk c: /B
komut belgelerinin yazdığı yer
/B NTFS only: Re-evaluates bad clusters on the volume
(implies /R)
Veya
Göre:
https://technet.microsoft.com/en-us/library/cc730714(v=ws.11).aspx
/B NTFS only: Clears the list of bad clusters on the volume and
rescans all allocated and free clusters for errors. /b includes
the functionality of /r. Use this parameter after imaging a
volume to a new hard disk drive.
Bu asla okunmayacak bir şey için çokça yazılmış bir yazıydı ve çokça ekranlandı.