Verder Terug Inhoud

8. Oplossen van het probleem

Let alsjeblieft op! De hieropvolgende gegeven uitleg zal je terugleiden naar een vorig systeem, waarbij je alles op je recent geïnstalleerde systeem verliest, als daar iets op staat! Je moet kiezen...

8.1 Het eenvoudiger geval

Alles is eenvoudig als je het bij de hand hebt:

Het is voldoende

  1. Linux te starten,
  2. fdisk /dev/hda te starten (of welke disk je dan ook wilt herstellen),
  3. fdisk te gebruiken om (met de optie d) alle bestaande partities op de beschadigde disk te verwijderen,
  4. fdisk te gebruiken om alle primaire (1-4) partities op het stukje papier opgeschreven, aan te maken,
  5. ze de van toepassing zijnde tag (t optie) te geven: 82 is voor Linux swap, 83 voor Linux main (L geeft je een lijst), 5 is extended en moet worden gedaan voor het aanmaken van de logische partities,
  6. het aanmaken van enige logische partities.

fdisk is een klein en zeer slim programma. Er zijn van fdisk diverse maaksels, maar ik geef altijd de voorkeur aan het allernoodzakelijkste (ik heb het hier over die van Linux uiteraard, niet de anderen...).

Wees je ervan bewust dat fdisk niets naar disk wegschrijft totdat je de w en return aanslaat. Voor het geval je vreest een fout te maken, tik de q (quit) in of Ctrl C (\^{ }C) om veilig te stoppen.

Wanneer je nieuwe partitietabel is weggeschreven, start je Linux. De kans bestaat dat je dat niet zoals gebruikelijk kunt doen: mogelijk is ook lilo beschadigd en zal je een bootdiskette nodig hebben of vanaf een cd moeten booten (kies de optie "booting the installed partition").

Als je lilo gebruikt om te booten, toets je "lilo" in zodra je als root bent ingelogd en druk je op de return om je favoriete bootloader te herinstalleren.

Je Linux zou daar helemaal moeten zijn, test het. Probeer zover van toepassing ook windows te starten. Als je dit niet kunt, bestaat er een (zeer kleine) kans dat je de gegevens vanuit Linux kunt lezen, misschien door het lezen van raw sector per sector. Als je de disksectors waarop je gegevens zich bevinden niet kunt identificeren, gebruik dan dd om ze naar een bestand te kopiëren. Dit is alleen verstandig voor tekst. Dit herstel valt NIET binnen het kader van deze mini-HOWTO.

8.2 Een niet zo eenvoudige situatie

Met de hand

Dit is wanneer de voorgaande situatie niet kan worden gebruikt, vanwege het ontbreken van de uitvoer van fdisk op een stuk papier of als je een verouderde uitdraai hebt.

Houdt als eerste in de gaten dat zolang je niets naar disk wegschrijft, je je gegevens niet kunt verwijderen (behalve met fdisk), dus kun je het blok per blok proberen. Dat wil zeggen dat je het begin van de partitie moet weten. Als, laten we zeggen een 153 niet werkt, probeer dan een 154, enzovoort.

Dit kan vervelend zijn, maar als je bij benadering de grootte van de Linux-partitie weet, bestaat er een kans op herstel.

gpart

Maar er is een betere manier als je het net nog steeds kunt benaderen of als je "gpart" bij de hand hebt.

"gpart - raadt naar PC-type harddiskpartities" geeft de eerste regel van de manpage van gpart (man gpart) aan.

"gpart probeert te gissen welke partities op een harddisk voorkomen. Als de primaire partitietabel verloren is gegaan, is overschreven of geruïneerd komen de partities nog steeds op de disk voor, maar kan het besturingssysteem ze niet benaderen." Dit is precies wat we nodig hebben.

gpart is nog steeds in beta, maar het is reeds een zeer goede tool.

Het probleem is als volgt: het eerste blok van iedere partitie is gemarkeerd. Maar als het niet is overschreven wordt het nooit "gedemarkeerd". Dus op een oude disk komen veel "eerste partitieblokken" voor en gpart probeert naar beste kunnen te gissen welke de goede is. In feite is het niet zo moeilijk uit te proberen, er wordt door gpart niets naar disk weggeschreven.

Hier is het resultaat van gpart over de voorheen bekeken disk hdb:

root@charles:/home/jdd > gpart /dev/hdb

Begin scan...

Possible partition(Linux ext2), size(1200Mb), offset(0Mb)

Possible partition(Windows NTFS), size(1200Mb), offset(1200Mb)

Possible partition(Linux ext2), size(1004Mb), offset(2402Mb)

Possible partition(Windows NTFS), size(1600Mb), offset(4102Mb)

End scan.

Checking partitions...

* Warning: partition(OS/2 HPFS, NTFS, QNX or Advanced UNIX) ends beyond disk end .

Partition(Linux ext2 filesystem): primary

Partition(OS/2 HPFS, NTFS, QNX or Advanced UNIX): primary

Partition(Linux ext2 filesystem): primary

Partition(OS/2 HPFS, NTFS, QNX or Advanced UNIX): invalid primary

Ok.

Guessed primary partition table:

Primary partition(1)

type: 131(0x83)(Linux ext2 filesystem)

size: 1200mb #s(2457880) s(63-2457942)

chs: (0/1/1)-(152/254/61)d (0/1/1)-(152/254/61)r

Primary partition(2)

type: 007(0x07)(OS/2 HPFS, NTFS, QNX or Advanced UNIX)

size: 1200mb #s(2457880) s(2457944-4915823)

chs: (152/254/63)-(305/253/60)d (152/254/63)-(305/253/60)r

Primary partition(3)

type: 131(0x83)(Linux ext2 filesystem)

size: 1004mb #s(2056256) s(4919781-6976036)

chs: (306/61/49)-(434/60/47)d (306/61/49)-(434/60/47)r

Primary partition(4)

type: 000(0x00)(unused) size: 0mb #s(0) s(0-0) chs: (0/0/0)-(0/0/0)d (0/0/0)-(0/0/0)r

Zoals je kunt zien, kunnen primaire partities worden hersteld, maar extended partities niet.

Dos partities zijn gelabeld met "windows NTFS" omdat ze werden aangemaakt tijdens een poging Windows 2000 te installeren (een zeer vervelende ervaring !). De "invalid" partitie is in feite de extended partitie.

Hiermee kan men met fdisk proberen de partitietabel opnieuw aan te maken (denk eraan dat dit zonder risico is aangezien het origineel reeds verloren is gegaan).

8.3 Het betere geval

Partition Magic is een commercieel product, niet zo goedkoop gezien het weinige dat men ermee kan (in Frankrijk bij benadering honderd dollar), maar met een zeer hoge reputatie. Ik gebruik het echter nooit en zal er geen waarde aan toekennen. Er wordt van gezegd dat het met partities alles kan doen, inclusief het herstellen ervan. Het is echter een windows-tool, en ik weet niet of er een dos-variant van is. Als men voor het gebruik van Partition magic, windows moet installeren, is de belangstelling er niet groot voor.

De oorspronkelijke partition-rescue mini HOWTO van Ralf was in belangrijke mate gebaseerd op het gebruik van Partition Magic, dus veronderstel dat het een zeer goede oplossing is als je waardevolle gegevens op je Linux-partitie hebt en niet veel Linux-capaciteiten. Er zijn nu echter zeer recente maaksels van Partition Magic en ik denk dat het beter is als je de handleiding leest.


Verder Terug Inhoud