Partitionstabelle reparieren

Partitionstabelle reparieren

Ich habe gerade die Partitionstabelle der Festplatte meines Systems überschrieben. Ich habe eine cfdiskauf dem falschen Gerät erstellt ( /dev/sdastatt /dev/sdd), alle Partitionen gelöscht, eine neue primäre Partition erstellt, die sich über das gesamte Gerät erstreckt, ihren Typ auf 07(NTFS) eingestellt und auf geklickt write.

Hier bin ich also mit meinem laufenden System. Bis zum Neustart wird sich hoffentlich/wahrscheinlich nichts ändern – das heißt: Alle meine Daten sind zugänglich (ich erstelle gerade ein ddBackup des gesamten Geräts und plane, später ein Backup der wichtigsten Daten zu erstellen ). Ich habe .tar.gzauch gesichert (obwohl es hier wohl eher um Durchsatz und solche Sachen geht ...) und ./proc/partitions/proc/diskstats/sys/block/sda/sda?/{start,size}

Einige weitere Dinge, die ich weiß:

  • 4 primäre Partitionen
  • 1. Partition: ~100 MB, ext3, /boot
  • 2. Partition: ~100 MB, „Win7-Bootpartition“, ntfs(?)
  • 3. Partition: ~20...30GB, Win7, ntfs
  • 4. Partition: ~20...30 GB, luks-verschlüsseltes Gerät
  • Die Luks-deDas verschlüsselte Gerät ist ein LVM-PV
  • Die /, /home& swap-Partitionen sind alle LVs auf dem (VG auf dem) oben angegebenen PV

Also meine Fragen:

  • Was ist der einfachste Weg, die Partitionstabelle des Kernels auf die Festplatte zu schreiben?
  • Was ist der einfachste Weg, aus den oben genannten (und möglicherweise weiteren, mir unbekannten ...) Daten die Partitionstabelle zu erstellen?
  • Gibt es irgendwelche Probleme im Zusammenhang mit Luks und/oder LVM, die beachtet werden müssen?
  • Gibt es Daten, die ich vor dem Neustart sichern sollte (also Sachen vom Kernel [/sys/..., /proc/...] usw., die mir bei der Neugenerierung der Partitionstabelle helfen könnten)?

Antwort1

Nicht zu schwierig. Hoffentlich.

Notieren Sie sich zunächst die Größe und Reihenfolge aller Ihrer Partitionen auf /dev/sda:

challenger:/home/michael # grep . /sys/block/sda/sda*/{start,size}
/sys/block/sda/sda1/start:63
/sys/block/sda/sda2/start:228690000
/sys/block/sda/sda3/start:257040
/sys/block/sda/sda1/size:256977
/sys/block/sda/sda2/size:83885760
/sys/block/sda/sda3/size:228432960

Führen Sie fdisk auf /dev/sda aus und ändern Sie die Einheiten in Sektoren:

Command (m for help): u
Changing display/entry units to sectors

Beginnen Sie dann mit der Partitionierung. Verwenden Sie für jede Partition die entsprechenden Zahlen startund .size
Vermeiden Sie einen Off-by-one-Fehler – subtrahieren Sie eins von, sizebevor Sie es in fdisk eingeben.

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 1
First sector (63-312581807, default 63): 
Using default value 63
Last sector, +sectors or +size{K,M,G} (63-312581807, default 312581807): +256976

Command (m for help): p

Disk /dev/sda: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders, total 312581808 sectors
Units = sectors of 1 * 512 = 512 bytes
Disk identifier: 0x02b002af

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1              63      257039      128488+  83  Linux

Vergessen Sie nicht, Ihre Partitions-IDs festzulegen und das Boot-Flag auf der richtigen Partition umzuschalten

Installieren Sie jetzt Ihren MBR neu und schon sollte alles bereit sein.


Natürlich können Sie dies alles mit Ihrem bevorzugten Partitionseditor tun ... Parted funktioniert auch einwandfrei.

Wenn Sie die Informationen zum Start/Ende von Partitionen verloren haben, bietet parted „Rettungs“-Optionen, um die Festplatte nach verlorenen Partitionen zu durchsuchen. Diese sollten Sie jedoch nicht benötigen.

Antwort2

Wenn die Partitionstabelle beschädigt ist, würde ich vorschlagen, eine Bootdiskette von RIP zu verwenden (unter Linux ist eine Rettung möglich), um testdisk auszuführen. Vielleicht können Sie testdisk von Ihrem laufenden System aus ausführen, um Partitionen zu scannen und wiederherzustellen, aber das würde ich nicht versuchen, weil ich nicht weiß, was es mit einem laufenden System mit offenen Dateien machen würde.

Wenn Sie versuchen möchten, wichtige Daten zu sichern (Sie haben noch keines?), wäre jetzt ein guter Zeitpunkt dafür …

verwandte Informationen