reklama
Aktuality  |  Články  |  Recenze
Doporučení  |  Diskuze
Grafické karty a hry  |  Procesory
Storage a RAM
Monitory  |  Ostatní
Akumulátory, EV
Robotika, AI
Průzkum vesmíru
Digimanie  |  TV Freak  |  Svět mobilně

vrácení bad blocků (vadného sektoru) nebo mapa celého NTFS

nedelak (14)|9.8.2010 17:28
Zdravím. Mám trochu zvláštní problém s HDD.
Na disku (1TB WD10EADS s jednou NTFS partition) se mi objevil Bad block. Nebo Bad cluster, nevím jaké označení je správné. Aniž jsem si toho všiml, Win XP po startu pustily Checkdisk a BB označily.
Takže výpis chckdsk je (češtinu neopravuju, čitelné to je):
Syst'm Windows zkontroloval syst'm soubor a nezjistil §*dn' potˇ§e.

976760000 kB mˇsta na disku celkem.
962836480 kB v 527697 souborech u§ivatele.
166844 kB v 47192 rejstýˇcˇch.
4 kB v chybněch sektorech.
680304 kB pou§ˇv* syst'm.
65536 kB zabˇr* soubor s protokolem.
13076368 kB na disku je volněch.

4096 bajt v ka§d' alokaźnˇ jednotce
244190000 alokaźnˇch jednotek na disku celkem.
3269092 volněch alokaźnˇch jednotek



Disk byl hodně plný a já potřebuju zjistit, v jaké souboru se se chyba objevila. Potřebuju ten soubor najít, abych zjistil, jestli ho někde mám zálohovaný. Googlil jsem dlouho a zkoušel různý sw, ale řešení jsme nenašel.

Teď trochu odbočím SMART ukazuje: Current sector pending = 1, Write Error Rate = 1, Reallocated=0, Reallocation events=0, RAW Error read rate = 138.
Hodnoty se sice dál nezvyšují, ale je vidět, že skoro nový disk je trochu "nahlodaný". Mám několik let staré disky, které mají hodnoty na nulách. Samozřejmě vím, že když třeba přes WDCDIAG pending sector "opravím", disk se bude chovat jako nový a dál sloužit, ale to nechci ze dvou důvodů. Zaprvé ho budu reklamovat, protože už mu nevěřím. Za druhé opravou low level chyby přijdu o bad block ve filesystemu a jakoukoliv šanci zjistit, kde se nacházel. Proto to nízkoúrovňově opravovat nechci.

Všechny soubory z disku jsem překopíroval na jiný disk. Jelikož ale checkdisk "opravil" vadný sektor, v jednom souboru na disku je chyba. Soubor se sice zkopíroval, ale 4kB dat je v něm nahrazeno nulami nebo nesmysly. Těžko mohu po jednom kontrolovat tisíce souborů a chybu hledat, navíc se ani nemusela projevit.


potřebuju zjistit, KDE přesně (v jakém souboru) se checkdiskem označený bad block nachází. Napadají mě dvě možnosti.:
1. Sehnat mapu souborů na disku, mapu NTFS filesystemu, která ukáže místo s bad blockem. Nevím, jak to pospat. Pamatujete starý scandisk pro DOS, který na badblocku ukázal čteveček s "B" ? Případně defragmentační program DEFRAGGLER ukáže po kliknutí na čtvereček, jaké soubory se pod ním nacházejí. Bohužel ten mi ale neukazuje žádný bad block. A nenašel jsem podobný program, který by ho ukazoval.

2. Ještě mě napadla druhá možnost, jak to zjistit. Pokud by se badblock znovu odznačil jako zdravý. Pak bych zkusil všechny soubory zkopírovat soubor obsahující nečitelnou oblast by vypsal chybu čtení. Tím bych zjistil, jaký soubor nejde přečíst. Prý nějak jde chybný sektor znovu označit jako "zdravý", ale nenašel jsem program, který to dokáže. Našel jsem radu, že to jde ručně udělal diskeditorem, ale ne srozumitelný návod. A Linux po ruce nemám. Našel jsem i nějaký starý soft, ale byl jen pro FAT a ne NTFS, navíc měl myslím omezení 128GB a disk je 8x větší, takže na nic.

Myslel jsem, že když je na NTFS disku checkdiskem označený badblock, musí tam být i skrytý soubor $BADCLUS. Ale "dir /ah $badclus" mi píše, že soubor nebyl nalezen, což mi není jasné proč.

Potřebuju disk reklamovat, ale nepřed musím zjistit, o jaký soubor jsem na něm přišel.
Poradíte mi řešení ?

nedelak


PS: Jsem tu na fóru nový a zkoušel jsem vyhledávač, ale podobné téma jsem nenašel.
Dojigiri (1629)|9.8.2010 20:32
Nevím jak WDCdiag ale např. obdobnej tool od Seagate při spuštění testu vypíše číslo sektoru/ů kterej je vadnej.

Ale jak zjistit kterej soubor na daným sektoru byl nevím, zase tak dobře do struktury NTFS nevidím ... jedině snad nechat ten disk projet HDDregeneratorem (ten nějakým způsobem dokáže obnovit data i z vadných sektorů, nevím, jak to přesně dělá, ale už mi několikrát pomoh) a pak se v disk editoru na ten sektor podívat co v něm bylo (protože v NTFS se to samozřejmě už neobnoví, protože chkdsk ten soubor odříznul, pokud tam teda nějakej byl).

Mám ale takovej pocit, že kdyby tam byl soubor, že by chkdsk vypsal že soubor ten a ten není čitelnej ... ale na 100% si tím úplně jistej nejsem, ale mám dojem že když jsem měl podobný problémy tak mi chkdsk vypisoval jména vadných souborů. Takže v tom případě pokud nic nevypsal by tam bylo jenom prázdným místo.

Jinak vypsat soubory jako $badclus, $mft, $log apod. běžným způsobem nelze, dir to určitě nedokáže, jedná se o vnitřní soubory operačního (resp. souborovýho) systému ke kterým nemá uživatel za normálních okolností přístup.

To asi lze pouze v disk editoru, nebo např. nástrojem jako je tenhle http://www.milannemec.com/diskview.html
zsdx (2098)|9.8.2010 21:51
[quote=Dojigiri]Nevím jak WDCdiag ale např. obdobnej tool od Seagate při spuštění testu vypíše číslo sektoru/ů kterej je vadnej.[/quote]

Je pravda, ze nic nebrani pouziti SeaTools na disk WD! A od cisla sektoru se pak lze odpichnout dal.


[ot]Jeden nedelak sveho casu dost aktivne a hodnotne pusobil v diskuzich na CDR[/ot]
nedelak (14)|10.8.2010 02:04
Mno, díky za první nápady. Ale WDCDIAG spustit určitě nemůžu a Seatools nevím, jestli riskovat. V minulosti se mi totiž stalo, že minimálně jeden z těchto dvou programů chybu na disku automaticky opravil, aniž se zeptal na potvrzení. Jen po skončení testu vypadla hláška ve smyslu "Test nalezl chyby a opravil je". Prostě jen realokoval lowlevel sektor a jeho počet zapsal do smartu. To docela naštve, protože tím se ztratí jakákoliv šance najít poškozený soubor a udělá problém při reklamaci (disk se bude ve smartu tvářit jako OK. HDD regenerator taky neni dobrý nápad.
Zkusím najít jiný soft na zjištění nečitelnýho sektoru.
dir s příkazem /ah by měl myslím skryté soubory NTFS ukázat. Mně to připadá, jak kdyby tam $BADCLUS nebyl.

Diskview vypadá dobře. Ale já při pohledu na sektor nepoznám, jaká data se na něm nacházejí.
Ten program po zadání souboru vypíše sektory, na kterém se nachází. Ale nenašel jsem obrácenou funkci zadat sektor a zjistit jméno souboru.
Navíc mi připadá, že mi to ukazuje asi jen jen začáteční sektor. Co když je soubor fragmentovaný?

OT: Ten nedelak už nemá čas a navíc CDR před deseti lety bylo trochu něco jiného, než Díít teď ...
nedelak (14)|10.8.2010 02:13
Přitom mám pocit, že stejný problém při dnešní poruchovosti disků přece musí řešit tisíce lidí. To je klasická modelová situace:
1. Na disku se objeví nečitelné sektory.
2. Checkdisk je po restartu automaticky "opraví" a zneviditelní označením jako vadné sektory (bad blocky), ztracená data pravděpodobně nahradí třeba nulami.
3. V horším případě o tom uživatel ani neví. V lepším je právem hodně nasrštvaný.
4. uživatel potřebuje zjistit, o která data přišel a v jakých souborech je vyskytují chyby.

Co myslíte, s ničím podobným jste se nesetkali?
durib (1141)|10.8.2010 09:08
To nejakym rozumnym zpusobem nezjistis, zvlaste, jsou-li data fragmentovana. Je jeste moznost zkusit zkopirovat vsechna data jinam a cekat na pripadnou chybovou hlasku... pokud nic, je bud vse OK, nebo se 00 pri kopirovani neprojevila jako chyba.
Ve SMART jsou zapsane realokace, takze s reklamaci by problem byt nemel.
Logout (4018)|10.8.2010 10:27
Udělal bych to jak říká durib. Protože rozhodně (pokud teda máš data rád) bych tomu disku už nadále nevěřil, leda jako parťáka do raidu nebo s denníma zálohama.
Novej disk je za cenu jedno až dvoudenní brigády - vzhledem k tomu kolik času si zabil už jen tim zjišťovánim badsectoru, tak je imho novej disk dobrá investice.
zsdx (2098)|10.8.2010 13:39
[quote=nedelak;394283]Mno, díky za první nápady. Ale WDCDIAG spustit určitě nemůžu a Seatools nevím, jestli riskovat.[/quote]
SeaTools pro DOS URCITE sami neopravuji a navic dovoluji opravu preskocit. Proste na konci vypisou 'sector xx je vadny, chcete opravit?' s volbami ano, ne , ano vsechny , ne vsechny.
[quote]dir s příkazem /ah by měl myslím skryté soubory NTFS ukázat. Mně to připadá, jak kdyby tam $BADCLUS nebyl.[/quote]
Ale on to neni soubor, ale zaznam. Ale jde cist viz napr. http://www.pcreview.co.uk/forums/thread-1942965-3.php
[quote]OT: Ten nedelak už nemá čas a navíc CDR před deseti lety bylo trochu něco jiného, než díít teď ...[/quote]
Dle dukladnosti pri reseni tipuji, ze je to on. Vitej!
zsdx (2098)|10.8.2010 13:42
[quote=nedelak;394284]
4. uživatel potřebuje zjistit, o která data přišel a v jakých souborech je vyskytují chyby.
[/quote]

Na to jsou preci kontrolni soucty /napr. md5/ ulozene na jinem mediu.
nedelak (14)|10.8.2010 15:09
[quote=durib;394301]To nejakym rozumnym zpusobem nezjistis, zvlaste, jsou-li data fragmentovana. Je jeste moznost zkusit zkopirovat vsechna data jinam a cekat na pripadnou chybovou hlasku... pokud nic, je bud vse OK, nebo se 00 pri kopirovani neprojevila jako chyba.
Ve SMART jsou zapsane realokace, takze s reklamaci by problem byt nemel.[/quote]

Právě, že v NTFS se nevyznám a mimo fragmentace tam může být i komprese...
Kopírování právě žádnou hlášku nevyhodí, protože to chckdsk opravil realokováním a nejspíš chybějící data nahradil nulama(?). Kdyby se mi sektor označený jako badblock podařilo vrátit jako neoznačený, tak by se při kopírování chybová hláška o nečitelnosti objevila.

S tou reklamací vím. Ale pořád je lepší, když to vypíše chybu, než když wdcdiag ukáže vše OK. A nemám chuť se hádat kvůli jednomu realokovanýmu sektoru, přitom disku nevěřím.

[quote=Logout;394314]Udělal bych to jak říká durib. Protože rozhodně (pokud teda máš data rád) bych tomu disku už nadále nevěřil, leda jako parťáka do raidu nebo s denníma zálohama.
Novej disk je za cenu jedno až dvoudenní brigády - vzhledem k tomu kolik času si zabil už jen tim zjišťovánim badsectoru, tak je imho novej disk dobrá investice.[/quote]

To je jasný, že mu nevěřím, reklamovat ho budu. Ale předtím bych rád zjistil, jestli jsem o něco přišel. Nový disk už jsem si koupil a data na něj přetáhl.
I když narážku na investici jsem moc nepochopil. Zas všechny disky mít zdvojené v RAIDu neplánuju.
nedelak (14)|10.8.2010 16:00
[quote=zsdx;394357]SeaTools pro DOS URCITE sami neopravuji a navic dovoluji opravu preskocit. Proste na konci vypisou 'sector xx je vadny, chcete opravit?' s volbami ano, ne , ano vsechny , ne vsechny.


Ale on to neni soubor, ale zaznam. Ale jde cist viz napr. http://www.pcreview.co.uk/forums/thread-1942965-3.php


Dle dukladnosti pri reseni tipuji, ze je to on. Vitej![/quote]

1. OK, tak to zkusím. Počkám si, projet 1TB disk chvíli trvá a hlavně ho teď nemám u sebe a zítra odjíždím na festival.
Takže když budu znát čísto vadnýho sektoru, tak ještě umět najít soubor, který tam leží

2. Z toho moc chytrej nejsem, možná je to nad moje schopnosti.
http://www.bodden.de/legacy/bad-sector-recovery-on-ntfs/
Pod linuxem by to asi šlo. Jenže přiznávám, je to pro mě španělská vesnice a s nulovými zkušenostmi to nezvládnu.

3. Sice vlastně nevím, koho zdravím, ale ahoj a díky za přivítání.


[quote=zsdx;394358]Na to jsou preci kontrolni soucty /napr. md5/ ulozene na jinem mediu.[/quote]

To bych potřeboval něco, co běží na pozadí a permanentně zapisu kontrolní součty všech souborů. Podobný soft neznám, navíc nezabije to systém na rychlost 486ky ?


A díky všem za projevenou snahu.
r34ktor (7477)|10.8.2010 17:02
Do budoucna mi ti mohl pomoci tento článek. Ale momentálně se domnívám, že jakmile do toho chkdsk hrábne, asi moc nedohledáš.

Co se týče WD10EADS, určitě bych ho reklamoval. Jak vyplývá z reakcí lidí na Newegg, přílišné množství DOA svědčí o tom, že se tahle řada WD moc nepovedla.
Dojigiri (1629)|10.8.2010 17:23
No, pokud už budeš vědět číslo vadnýho sektoru, tak ho lze otevřít v nějakým disk editoru, např. ndd, winhex nebo dskprobe (ovšem pouze za předpokladu, že bys ho předtím opravil např. HDDreg., aby byl čitelnej). Alternativně se lze podívat do sousedních a odhadnout podle dat jakej soubor tam asi mohl být (ale blbě se odhaduje jestli ty data skutečně něčemu patří anebo už byl dotyčnej soubor smazán a je tam vlastně volný místo).

I když nějak by to možný bejt mělo, protože např. defragmentory jsou často schopný při kliknutí na určitý místo v mapě disku zobrazit, jakej soubor se tam zrovna aktuálně nachází.
zsdx (2098)|10.8.2010 18:17
[quote=nedelak][quote=zsdx]Na to jsou preci kontrolni soucty /napr. md5/ ulozene na jinem mediu.[/quote]To bych potřeboval něco, co běží na pozadí a permanentně zapisu kontrolní součty všech souborů. Podobný soft neznám, navíc nezabije to systém na rychlost 486ky ?[/QUOTE]

Rezidenta bohuzel taky neznam, spis jednorazove utility (prima je negraficky fsum). Asi by to slo dat do Planovace uloh s 'update' rezimem (fsum /u). Ale samozrejme vykonovy dopad je znat - jde o intenzivni cteni z disku (plus nevelky spotrebovany vypocetni vykon).
durib (1141)|10.8.2010 18:38
Reklamaci bych urcite zkusil. Maximalne jej vrati zpatky, ale kdyz jsem reklamoval WD 640GB, bez prutahu a testovani jej rovnou vymenil za novy.
nedelak (14)|10.8.2010 22:34
[quote=Dojigiri;394401]No, pokud už budeš vědět číslo vadnýho sektoru, tak ho lze otevřít v nějakým disk editoru, např. ndd, winhex nebo dskprobe (ovšem pouze za předpokladu, že bys ho předtím opravil např. HDDreg., aby byl čitelnej). Alternativně se lze podívat do sousedních a odhadnout podle dat jakej soubor tam asi mohl být (ale blbě se odhaduje jestli ty data skutečně něčemu patří anebo už byl dotyčnej soubor smazán a je tam vlastně volný místo).

I když nějak by to možný bejt mělo, protože např. defragmentory jsou často schopný při kliknutí na určitý místo v mapě disku zobrazit, jakej soubor se tam zrovna aktuálně nachází.[/quote]

Na WINHEX jsem si nevzpomněl, to vypadá jako dost mocný nástroj. Po návratu vyzkouším.
Defraggler soubory na místě ukazuje. Jenže neukazuje, kde je vadný sektor. Tím jsem právě myslel tu mapu disku v původním dotazu.

Ono je taky dost možný, že k žádné ztrátě dat ani nedošlo a v těch 4kB nic nebylo. NTFS má snad nějaké kontrolní mechanizmy, ale fakt netuším...
Logout (4018)|11.8.2010 01:11
Hmmm, nejsem si jistej, ale furt mi tu nehraje jedna věc.
Ty si ty data přehrál? A neřvalo to u žádnýho souboru? Pak imho data poškozený nejsou, nebo sou poškozený tak, že to nepoznáš (disk sektor blbě přečet a realokoval s blbejma datama). Kdyby byl soubor při kopírování přes badblock, tak by to přeci řvalo při jeho čtení, ne?
Dojigiri (1629)|11.8.2010 09:39
No ono je možný, že když na tom byl spuštěn chkdsk a nemoh ten sektor přečíst, že ten soubor odstanil z MFT, takže byl "smazán". Takže při kopírování pak ten soubor vůbec kopírován být nemusel.

NTFS má žurnálování, což je ale spíš věc pro případ nečekanýho pádu systému, vadný bloky bych řek že opravit (ani detekovat) nedokáže. A jeho implementace (resp. vůbec celýho NTFS) taky není nějak zvlášť odolná, protože se stává docela často, že při takovým výpadku dojde k poškození prvního sektoru NTFS jednotky (boot recordu) a je třeba ho opravovat (osobně už jsem to opravoval několikrát a na fóru je tenhle problém taky vcelku často). Ale naštěstí je na jednotce jeho kopie, takže se s tím při návrhu tak nějak počítalo.

No, co se týká reklamace, většinou to asi moc neřešej a vyměňujou, ale v principu by to mohli i opravit tak, že na tom spustí ten hddregenerator a nechají to realokovat - proto tam ta nadbytečná oblast je a v podstatě se s tím počítá (když se nevyměňujou LCD s vadnými pixely do určitýho počtu, který navíc opravit ani nejdou, tak v principu není potřeba měnit hdd, když dokonce spravit jde a s realokací vadných sektorů se počítá). Ale pro obchodníka je asi jednodušší odeslat disk zpátky výrobci, než to řešit (zabralo by to nějakej čas a člověka kterej by to dělal by bylo třeba zaplatit).
Logout (4018)|12.8.2010 14:30
NTFS má žurnál jen na metadata, nikoli na data. Takže vadný bloky neopraví.

CHKDSK by nic měnit neměl, pokud se nezadal s parametrem opravit, ale je to MS soft :-)

Pokud by tam byl/nebyl soubor, tak to jde srovnat se zálohou snadno (tolik datovejch souborů člověku zas nezaniká, aby to nešlo probrat ručně). Tazatel se imho spíš bojí, aby neměl v prostřed souboru blbosti z chybnýho a realokovanýho souboru. A tam se přiznam, že nevim přesně, jestli si disk když zjistí badsector dovolí i realokovat sám a zapsat tam to co přečte, nebo takovoudle věc musí uživatel udělat spešl (např. hdd regeneratorem, formátem s kontrolou povrchu atd...).
Dojigiri (1629)|12.8.2010 18:13
No, jedině že by si ten soubor nějak "dotvořil" sám operační systém např. při kontrole chkdsk anebo při kopírování ... protože co se týká SMART, tak ten pokud vím vadnej sektor nepřealokuje sám od sebe, pokud z něj nejde přečíst (neví totiž pak, co by měl vlastně pod přealokovanej sektor napsat). Pouze ho dá pod "offline uncorrectable" a čeká, až do něj systém znovu zapíše (což by přepsalo původní data, takže už pak není důležitý, co v nich bylo) - v tu chvíli ho přealokuje a zapíše data do novýho umístění. Pak by sektor měl zmizet z offline uncorrectable a objevit se pod reallocated sectors (ve SMART).

Pokud existuje předchozí záloha, tak potom lze pro úplnou jistotu porovnat soubory podle obsahu - např. Total Commander to umí (Příkazy/Synchronizovat složky, zaškrtnout Porovnat podsložky a Podle obsahu).
nedelak (14)|26.8.2010 15:53
Víceméně vyřešeno.
Podle Winhexu byl v okolí nečitelného sektoru $LogFile a ne žádný datový soubor. Pravděpodobně teda k žádný ztrátě ani poškození dat nedošlo.
Ještě se ozvu později k posledním příspěvkům.
crasten (180)|27.8.2010 00:04
Check disk vytvára súbory s roztratenými blokmi v koreňovom adresári FILE0000.chk alebo tak nejak. Keď chcem vedieť, čo bolo poškodené otvorím to v notepade a vidím. Niekedy aj nevidím, ak to bol nejaký obrázok, alebo fragment multimediálneho súboru. Ale možno je celý tento môj príspevok od veci, lebo som to nečítal celé.