Portál AbcLinuxu, 7. listopadu 2025 23:41
Chyba bude v boot sektoru, řekl jsem si, za těch několik let jistě udělali v Microsoftu pokrok, vyzkoušíme Recovery konzoli z instalačního kompaktu Windows – nástroje jako fixboot, fixmbr jistě svoji práci dělají výborně.
Nesouhlasím. Nedávno jsem chtěl provést takovou trivialitu jako obnovit zaváděč Visty, v MBR byl totiž GRUB. Největšími experty na světě opěvovaný jakýsi Mbrfix mi hrdě oznámil, že oprava se povedla, Ale GRUB vesele bootoval dál 
Zkusil jsem tedy instalační DVD Visty s otu jejich slavnou recovery console. Spustil jsem program k opravě MBR určený, jakýsi Bootrec. Ten mi úspěšně našel instalaci Visty, a poté mi oznámil, že oddíl s Vistou není NTFS
Podotýkám, že Vista byla funkční a nomrálně bootovala přes GRUB.
Jestli myslíte tento MbrFix, tak podle popisu pouze pracuje s MBR. Jenže já jsem měl problém s boot sektorem jednoho jediného oddílu.
Kratky blik HDD Led potvrdi spravnost operacie.
Spíš, že se něco někam zapsalo nebo odněkud četlo. Rozhodně ne úspěšnost – fixboot taky blikal, ale jediné, co dělal, bylo, že přepisoval kód zaveděče, nikoliv již geometrii uloženou hned vedle.
fixmbr plus fixboot, ale ja pokazde musel pouzit nejaky nastroj na editaci rozdeleni disku - vetsinou stacilo otevrit a zas ulozit.
Horsi je stav, kdy z nejakeho duvodu Windows prepisi zacatek disku - nevim proc to delaji (osobne bych to odhadoval na chybu ovladacu disku), ale uz jsem tahal data z nekolika stroju, jejich disk byl ze zacatku prepsan nesmysly nebo naopak nulami. Sice se uz vetsinou nezachrani prvni oddil, ale z ostatnich jsem vzdy vsechna data vytahal (proto kazdemu s Windows doporucjuju disk rozdelit alespon na dva oddily).
Urcite existuji komercni nastroje, co tohle umi, ale ja si vystacil s dd (nebo dd_rescue ci pv) na vytvoreni image na mem disku (na povodni disk jsem pak kopiroval zachranene soubory), loopbackem a jednoduchym vlastnim programkem, ktery hledal zacatek NTFS partition pomoci vyskytu retezce "NTFS" (ofset 3-6) a boot signatury 0x55 0xAA (ofset 510-511) sektor po sektoru (tj. po 512 bytech).
Pokud programek najde neco, co vypada jako zacatek NTFS, vypise jeho ofset. Soubor se pak pripoji loopbackem (pres losetup s prislusnym ofsetem jako parametr) a nasledne se zkusi namountovat. Pokud to nehodi zadne chyby (je dobre sledovat hlaseni jadra), je to ono, jinak se loopback odpoji a postupuje se na dalsi nalezeny offset. Korektni oddily se mohou nechat pripojene, tedy alespon dokud nedojdou vilne loopbacky
Postupne se tak metodou pokus/omyl najdou vsechny nepozkozene oddily s NTFS (resp. oddily, ktere jsou dost nepozkozene pro primountovani), pokud je tohle nenajde, vetsinou jsou prilis pozkozene na obnovu, i kdyz jednou jsem pomoci ntfsfix vytahl data i z napoprve nenamountiovatelneho oddilu.
Nejspis to jde i pro FAT32, ale protoze vsichni, kterym jsem data z pozkozenych disku tahal, byli jen bezni uzivatele (=lamy) a meli vsude NTFS, tak jsem nikdy data z FAT32 tahat nemusel (jen z FAT16 a jen fotky z pametovych karet pres magicrescue). Obecne by rozpoznat zacatek FAT32 oddilu nemelo byt o moc slozitejsi, napriklad se muze spolu s boot signaturou hledat text "MSWIN" na obdobnem ofsetu jako u NTFS text "NTFS".
Ghosta (který funguje, ale není volně šiřitelný).Je volně cracknutelný
Jako jednorázovou domácí záležitost bych z toho nedělal morální problém...
Nefungovalo, protože:
Please note that the partition information is taken from your MBR, which is expected to be the same as before image creation - expect surprises if you change something between image creation and deployment.
g4u reads the disk bit by bit
A popravdě řečno nevidím jediný důvod, proč stahovat, instalovat a bootovat další systém, když dělá to samé jako dd.
Po bitvě je každý generál, takže jsem ještě hledal a našel GPL program pro Linux, který řeší přesně můj problém.
Jmenuje se ntfsreloc, starají se o to lidi od ntfsprogs (třebaže zatím není jeho součástí) a dostal jsem se k němu přes manuál ntfsclone(8).
Umí jak automatickou opravu geometrie disku a umístění oddílu, tak podle ručně zadaných hodnot, funguje i nad obrazem blokového zařízení v souboru.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.