Vadné sektory a ich oprava
Prízrak vadných sektorov straší mnohých užívateľov osobných počítačov. Doklad o ich absencii býva často najviac zdôrazňovaným bodom pri predaji použitých pevných diskov v internetových aukciách. V inej aukcii sa dokonca ponúka celá kniha o opravách vadných sektorov. Takto zložité to, dúfam, nebude.
Sektor je základnou jednotkou záznamu, t.j. najmenšie množstvo dát, ktoré je možné v jednej operácii na médium zaznamenať, alebo z neho prečítať. Takýchto sektorov majú dnešné disky stovky miliónov až miliardy a dĺžka každého je presne 512 bajtov, inak tiež pol kilobajtu (čo je dané historicky a berme to ako konštantu, napriek tomu, že mnohé nové disky už vnútorne pracujú s násobkom tejto hodnoty).
Hneď na úvod je treba povedať, že žiadne záznamové médium, kapacitou aspoň vzdialene porovnateľné s dnešnými diskami, nemôže byť úplne bezchybné. Aj keď sa pevné disky navonok takými javia, v skutočnosti každý z nich obsahuje desaťtisíce sektorov, ktoré boli pri testovaní vo výrobe vyhodnotené ako nespoľahlivé, či úplne nevhodné pre ukladanie užívateľských dát. Takéto miesta disk pri zázname automaticky preskakuje a chýbajúca kapacita je doplnená z nadbytkov na konci média. Vďaka tomu disk, ktorý kúpite v obchode vadné sektory v záznamovej oblasti neobsahuje. Tieto však môžu vzniknúť časom.
Vadný sektor je každý sektor, ktorého obsah nie je možné prečítať bez chýb.
Predstavte si knihu, ktorej stránka je dočarbaná až k nečitateľnosti - to je náš vadný sektor.
Samotný disk vám síce dokáže približný obsah takejto stránky poskytnúť, vzhľadom na použité kódovanie ale bude aj tak
od istého riadku úplne nečitateľná, a kým sa cestou operačného systému dostane k vám, niekto ju celú zahodí do koša,
prípadne aj s pár stránkami okolo, či rovno celú kapitolu.
V praxi to znamená, že súbor, ktorý je postihnutý
čo i len jedným vadným sektorom, môžete vo väčšine prípadov považovať za stratený.
Moderné pevné disky pritom používaju pokročilé metódy kontroly a opráv drobných porúch záznamu.
Pokračujúc v uvedenej analógii, každá stránka má pod čiarou vytlačených pár riadkov textu navyše, určité kódy, ktoré umožňujú doplniť
pár vyblednutých, či chybou papiera nečitateľných písmeniek. Toto sa deje úplne automaticky, pri plnej rýchlosti čítania,
podobne ako váš mozog pri čítaní opravuje moje preklepy.
Ak táto úroveň opráv už na množstvo chýb nestačí, disk vykoná viacero opakovaných pokusov sektor prečítať, prispôsobujúc pri tom rôzne elektrické a mechanické parametre.
Opäť rovaná analógia: pokúsi sa prečítať stránku s použitím iného svetla a všakovako pri tom žmúriac
očami.
Nakoniec ale v prípade skutočne nečitateľného záznamu disku neostane iné, len vzdať sa a ohlásiť chybu.
Čítanie poškodeného sektoru sa navonok prejavuje krátkym zaseknutím počítača (pri čakaní na opakované pokusy) a môže skončiť oznámením chyby operačným systémom, alebo rovno haváriou
, ak chyba zasiahla niektorý z kritických súborov,
či dôležité štruktúry súborového systému.
Disk, ktorý vykazuje nečitateľné sektory môže, ale nemusí byť vadný - určité množstvo týchto sektorov môže vzniknúť náhodne, aj z pomerne neškodných dôvodov - výpadkom napájnia, či otrasom práve v momente prebiehajúceho zápisu na disk. Väčšie množstvo chýb - stovky až tisíce, naopak skoro vždy signalizuje problém s mechanikou disku - poškodenie magnetického média, alebo záznamových hláv.
S chybami sa počíta
Okrem tzv. primárnych porúch - teda sektorov vyradených už vo výrobe, moderné pevné disky si samozrejme musia vedieť poradiť aj s dodatočnými poruchami - či už ide o náhodné chyby záznamu, alebo drobné poškodenia či pôvodne neodhalené chyby magnetickej vrstvy, ktoré sa prejavia až v prevádzke, starnutím materiálu. Pre tieto chyby používajú dnešné disky nasledovnú stratégiu:
- nečitateľný sektor, prípadne sektor, ktorý je možné prečítať len s obtiažami (po viacnásobných opakovaniach) disk zaradí na zoznam podozrivých. Disk objaví takéto sektory pri bežnej operácii čítania, alebo počas automatickej kontroly povrchu vo svojom voľnom čase.
- je možné, že pri neskorších čítaniach rovnakého sektoru disk uspeje - a keďže to môže byť zároveň aj posledný krát, čo sa to podarilo, radšej odloží kópiu vašich dát do náhradnej oblasti a ďalej už bude pounúkať túto.
- pôvodný sektor ostáva v nečitateľnom stave až do času, keď sa ho rozhodnete prepísať. Ak disk zaznamená príkaz na zápis dát do tejto oblasti, pred uložením samotných dát do podozrivého sektoru najskôr vykoná skúšku záznamu a po uložení vašich dát ešte overí ich čitateľnosť.
- ak bol zápis úspešný, pravdepodobne išlo o náhodnú poruchu. Sektor je zo zoznamu podozrivých vymazaný a ďalej sa už bude používať normálnym spôsobom.
- ak takýto zápis zlyhá, vaše dáta budú uložené do náhradnej oblasti, podozrivý sektor je definitívne označený za vadný a viac sa už nepoužije. Všetky prístupy k tomuto sektoru budú navždy presmerované do náhradnej oblasti.
Náhradná oblasť má typicky dĺžku len niekoľkých stoviek sektorov (čo naznačuje, nakoľko výrobci diskov veria svojim
výrobným testovacím algoritmom) a po vyčerpaní tohoto množstva prestáva popísaný systém automatických náhrad fungovať.
V niektorých prípadoch dokonca v dôsledku chýb v oblužnom programe - firmvéri disku, pri objavení každej ďaľšej
poruchy, takto vyčerpaný
disk odvisne.
Najdôležitejšie poznatky, ktoré by ste si mali z tejto state odniesť sú, že náhodné chyby sa spontánne vytratia po prepísaní novým obsahom a množstvo trvalých chýb, ktoré pribudnú za života zdravého disku býva relatívne malé, pričom je celkom možné, že sa o nich ani nedozviete.
Zbavme sa vadných sektorov
Existuje zopár dobrých dôvodov, prečo je lepšie zbaviť váš disk nečitateľných sektorov. Najdôležitejším je asi ten, že sa tým rýchlo dozviete, na čom ste - teda či je rozumné vášmu disku naďalej zverovať dôležité dáta. Ako bonus môžete odstrániť zasekávanie, keď disk narazí na takýto sektor pri automatickej kontrole povrchu, a môžno tým odstránite aj zbytočné odskoky do rezervnej oblasti disku.
Ak poškodený sektor objaví operačný systém, vyradí celú skupinu sektorov z ďaľšieho použitia. Týmto zabráni zápisu nových dát do poškodenej oblasti, čím ale zároveň efektívne blokuje využitie automatických opravných systémov disku.
Pozorný čitateľ už iste vie, že kľúčom k odstráneniu vadných sektorov je prepísanie týchto oblastí novým obsahom. Formátovanie disku tu nepomôže. Pod formátovaním dnešné operačné systémy myslia len vytvorenie a zápis nevyhnutných štruktúr súborového systému, v tom lepšom prípade doplnené o kontrolu čitateľnosti zvyšku plochy.
Najjednoduchším spôsobom, ako zaručene zapísať nový obsah do všetkých vadných sektorov, je prepísať celý disk,
od prvého sektoru, až po posledný.
Na tento účel vám môže poslúžiť špeciálny diagnostický program od výrobcu disku, či iné diskové nástroje, pričom
potrebná funkcia sa väčšinou volá Zero Fill
. Užívateľom linuxu môže rovnako dobre poslúžiť obyčajný dd z príkazového riadku.
Pre istotu zopakujem: cieľom tejto operácie je prepísať, teda vymazať celý disk!
To je niečo, čo rozhodne nechcete skúšat na disku s dátami, ktoré potrebujete zachovať!
Takže výlučne pre prázdny disk, dáta z ktorého boli už dávno skopírované najmenej na dve rôzne miesta, proste v prípade, keď sa rozhodujete, či váš starý disk je ešte použiteľný aspoň ako sekundárne úložisko, môžete skúsiť tento postup:
- bez pokusu o testovanie povrchu, rovno premažte celý disk funkciou zero-fill. Ak disk obsahuje množstvá vadných sektorov, skúška čítaním by mohla trvať príliš dlho a zbytočne by ste tým riskovali preplnenie záznamov disku. Vadné sektory, o ktorých disk vie budú týmto buď vrátené do normálneho stavu, alebo nahradené rezervou (ak je ešte z čoho). Náhodné chyby, ktoré disk zatiaľ neobjavil sa novým záznamom opravia, trvalé chyby ostanú na svojom mieste.
- vykonajte kontrolu čitateľnosti celého povrchu - v tomto kroku disk objaví zostávajúce trvalé poškodenia. Ak sa žiadne nenájdu, disk je pravdepodobne v poriadku a môžete tento postup ukončiť.
- ak sa našli nejaké chyby, opakovaním funkcie zero-fill umožníte systému disku spracovať aj tieto poškodenia.
- opakujte kontrolu povrchu. Akékoľvek zostávajúce vadné sektory pravdepodobne znamenajú vyčerpanie rezervnej oblasti disku, inými slovami vážny problém s mechanikou disku. Takýto disk už rozhodne nepoužívajte.