Partionieren Rückgängig

Post Reply
Message
Author
funkybooster

Partionieren Rückgängig

#1 Post by funkybooster »

Hallo zusammen!

Ich wollte vorhin mein Compact Flash an /dev/sdb partitionieren, hab dann aber /dev/sda erwischt - jaaaa, die Linux-System-HD <img src="http://www.pl-forum.de/UltraBoard/Images/Sad.gif" border="0" align="middle">((( die ist also neu partitoniert <img src="http://www.pl-forum.de/UltraBoard/Images/Sad.gif" border="0" align="middle"> Noch läuft das Linux-System weil ich's noch nicht neu gestartet habe. Leider weiss ich nicht mehr, wie die HD vorhin partioniert war. Hätte ich diese info, könnte ich ja wieder zurückpartitonieren und alles wär wieder in Butter.

Wo krieg ich diese Info her? Auf der Platte ist ja schon die neue Partionierung, doch momentan läuft das System ja noch also muss doch irgendwo die aktuelle Konfiguration abgelegt sein, nicht?

Vielen Dank

David

ratte

Re: Partionieren Rückgängig

#2 Post by ratte »

nein, partitionsdaten werden nicht gecacht.
weshalb dein system noch laeuft, liegt wohl eher daran, dass die programmme noch im speicher/swap liegen.

vielleicht ist dir <a href="http://www.stud.uni-hannover.de/user/76 ... ex-de.html" target="_blank"><!--auto-->http://www.stud.uni-hannover.de/user/76 ... <!--auto--> eine hilfe, aber das habe ich noch nicht ausprobiert.

viel erfolg

ratte

ratte

Re: Partionieren Rückgängig

#3 Post by ratte »

fuer die zukunft ist vielleicht <a href="http://www.partimage.org/index_de.php3" target="_blank"><!--auto-->http://www.partimage.org/index_de.php3</a><!--auto--> von interesse, aber auch das habe ich noch nicht getestet.

ratte

Jochen

Re: Partionieren Rückgängig

#4 Post by Jochen »

Solange die Kiste noch läuft, einfach aus /proc/partitions die Vorstellung des Linux-Kernels der aktuellen Partitionsdaten abziehen und mittels fdisk <i>exakt</i> reproduzieren. Dazu bietet es sich in, statt in Cylindern in Sektoren zu arbeiten (Kommando "u" im fdisk)!

@ratte: Solange eine Platte durch das OS in Betrieb ist, d.h. ein FS einer Partition der Platte ist gemountet, behält er sein Wissen über die Partitionierung, damit dem OS nicht im laufenden Betrieb der Boden unter den Füssen weggezogen werden kann. Nur wenn die Platte nicht in Betrieb ist (neu eingebaut, nix von gemountet) übernimmt das OS die Partitionsdaten, wenn fdisk sie wegschreibt.

Viel Erfolg!

Jochen

funkybooster

Re: Partionieren Rückgängig

#5 Post by funkybooster »

Guten Morgen

@ratte: Danke schön, das Tool ist cool, findet jedoch nur teilweise richtige Informationen. Gut zu wissen dass es das gibt!

@Jochen: Weisst Du per Zufall was die Zahlen in /proc/partions bedeuten? Ich finde irgendwie nirgends die benötigten Infos <img src="http://www.pl-forum.de/UltraBoard/Images/Sad.gif" border="0" align="middle"> Weisst Du etwas genaueres?

Danke 1000!

ratte

Re: Partionieren Rückgängig

#6 Post by ratte »

<blockquote><pre><font size="1" face="">code:</font><hr><font face="Courier New" size="2">
# fdisk -u -l /dev/hda

Disk /dev/hda: 255 heads, 63 sectors, 790 cylinders
Units = sectors of 1 * 512 bytes

Device Boot Start End Blocks Id System
/dev/hda1 63 208844 104391 83 Linux
/dev/hda2 208845 851444 321300 82 Linux swap
/dev/hda3 851445 5060474 2104515 83 Linux
/dev/hda4 5060475 12691349 3815437+ 5 Extended
/dev/hda5 5060538 9269504 2104483+ 83 Linux
/dev/hda6 9269568 12691349 1710891 83 Linux
# cat /proc/partitions
major minor #blocks name

22 0 6336225 ide/host0/bus1/target0/lun0/disc
22 1 136521 ide/host0/bus1/target0/lun0/part1
22 2 136552 ide/host0/bus1/target0/lun0/part2
22 3 6056505 ide/host0/bus1/target0/lun0/part3
3 0 6346368 ide/host0/bus0/target0/lun0/disc
3 1 104391 ide/host0/bus0/target0/lun0/part1
3 2 321300 ide/host0/bus0/target0/lun0/part2
3 3 2104515 ide/host0/bus0/target0/lun0/part3
3 4 1 ide/host0/bus0/target0/lun0/part4
3 5 2104483 ide/host0/bus0/target0/lun0/part5
3 6 1710891 ide/host0/bus0/target0/lun0/part6
3 64 395530 hdb
</font><hr></pre></blockquote>

im system vorhanden sind hda und hdd, auf hda ist das system, auf hdd alte daten (umounted)
fuer hda geht es bei cat /proc/partitions ja bei major 3 minor 1 los, die zahlen stimmen ja auch ueberein, bis auf partition 4, die eine extended ist.

Jochen, gib doch mal n tip, wie man da jetzt rechnen muss, wenn einem die partitionsdaten, die ich mir mit fdisk geholt habe _nicht_mehr_ zur verfuegung stehen.

ratte

Jochen

Re: Partionieren Rückgängig

#7 Post by Jochen »

Hmm, da hatte ich aber was anderes noch im Gedächtnis zu /proc/partitions... <img src="http://www.pl-forum.de/UltraBoard/Images/Sad.gif" border="0" align="middle">

Vielleicht hilft Dir der 3. Wert weiter, der entspricht der Anzahl Blöcke, wie sie auch ein "fdisk -ul /dev/sda" ausgibt (ausgeben würde, wenn die Part.-Tabelle noch i.O. wäre). Normalerweise sollten die Partitionen alle aneinander ohne Blocklücke anschliessen. Die einzige Ausnahme ist die erste primäre Partition, die ab <Anzahl Sektoren pro Track> beginnt. Wenn die Platte also 63 Sektoren pro Track hat, beginnt die 1. Part. an Sektor 63. Ab dort sollte aus der Länge und Reihenfolge der Partitionen die ursprüngliche Partitionstabelle rekonstruierbar sein. Die erweiterte Partition (wenn Du eine hast) ist jene, auf deren Namen nur Nullen folgen; die belegt ab Startblock typischerweise den Rest der Platte, um ihn den in ihr geschachtelten logischen Partition zur Verfügung zu stellen.

Das Unternehmen ist ein bisschen risiko-behaftet, da Du von ein paar Annahmen ausgehen musst. Vielleicht hast Du noch ein paar Erinnerungs-Brocken, die Dir weiterhelfen. Auch die Ausgabe von gpart kann Dir weiterhelfen, ob Deine Rekonstruktion mit einer möglichen Partitionierung übereinstimmt.

Übrigens: Wie wäre es mit eienr Datensicherung, solange die Kiste noch läuft? <img src="http://www.pl-forum.de/UltraBoard/Images/Wilk.gif" border="0" align="middle">

Jochen

funkybooster

Re: Partionieren Rückgängig

#8 Post by funkybooster »

Hallo alle!

Recht herzlichen Dank für Eure Anregungen! Troz allem hat's nicht ganz geklappt (weshalb weis ich nicht <img src="http://www.pl-forum.de/UltraBoard/Images/Sad.gif" border="0" align="middle">. Ein Backup habe ich natürlich gemacht.

Es hätte ja auch die Möglichkeit gegeben jede Partition in einen Tarball abzulegen und über's Netz auf einen anderen Computer zu spielen. Dann im Rettungssystem die Partitionen neu Aufsetzen und die Bälle zurückspielen<img src="http://www.pl-forum.de/UltraBoard/Images/Happy.gif" border="0" align="middle"> Eben, hätte... <img src="http://www.pl-forum.de/UltraBoard/Images/Happy.gif" border="0" align="middle">

Ich habe folgendes versucht:
o Ich habe mir die #blocks aus der Ausgabe von 'cat /proc/partitions' notiert. In der Ausgabe steht ja auch schön, wie das Ding heisst /dev/sda1 usw.
o Des weiteren habe ich mir die Datei /etc/fstab und die Ausgabe des Befehls 'df' angeschaut. Damit konnte ich herausfinden, welche Partition welche Funktion (/, /boot, /home, swap) und welches Dateisystem besitzt.
o Mit diesen Infos startete ich fdisk (fisk -u /dev/sda)
o Mit fdisk legte ich GENAU die gleichen Partitionen wieder an:
Auszug /proc/partitions
---[snip]---
8 1 2096451 sda1 ......
---[snip]---
Wie hier zu sehen ist, ist dies die 1. SCSI Partiton. Der Anfangssektor wird mit 63 vorgeschlagen -> OK. Der Lastsector wird wie folgt berechnet

Lastsector = (#blocks*2 + Anfangssektor)-1

eingesetzt

4192964 = (2096451*2 + 63) - 1.

Wird dieser Wert eingetragen und das Ergebnis mit 'p' angeschaut, stimmen die blocks in /proc/partitions und fdisk überein!
o So bin ich mit jeder Partition vorgegangen.
o Am Schluss alles auf die Platte schreiben und Restart!

Erst versuchte ich das WinNT (in der 1. Partition) zu starten --> FUNTIONIERTE!! Juhuuuiii. Dann Linux. Der Kernel kommt hoch (d.h. /boot ist auch OK) und dann sollte das ROOTFS (reiserfs) gemountet werden und....kernel panic, das ROOTFS wird nicht gefunden weil das reiserfs-modul keine Superblocks findet...

Nun ja, auch einen Mountversuch aus dem Rettungssystem brachte nichts. Jetzt hab ich's halt neu aufgesetzt<img src="http://www.pl-forum.de/UltraBoard/Images/Happy.gif" border="0" align="middle">

Also, vielen Dank allen, mindestens NT muss ich nicht neu aufsetzen (hätte mich eher betrübt<img src="http://www.pl-forum.de/UltraBoard/Images/Happy.gif" border="0" align="middle">, aber ich brauchs ja kaum noch)

Post Reply