Bootsektor: MBR ohne Datenverlust in GPT umwandeln
Hallo, zusammen, da ich am Montag meine Windows-Partition endgültig beerdigt habe, habe ich mir überlegt, dass ich gerne statt des MBR einen GPT Bootsektor auf meiner Festplatte hätte. Im Netz habe ich über einen Thread im Arch Forum folgende erklärende Seite gefunden: http://www.rodsbooks.com/gdisk/mbr2gpt.html Es hat sich herausgestellt, dass das für GPT gedachte Partitionierungsprogramm "gdisk" einen MBR in GPT umwandelt, indem man das entsprechende Device mit gdisk öffnet, und anschließend, ohne etwas an der Partitionierung zu ändern, einfach 'w' für speichern und verlassen eingibt. Danach hat man dann einen GPT Bootsektor, ohne an den Partitionen etwas zu verändern. Der Haken dabei ist, dass Grub seine Daten unter MBR im Bootsektor speichert, wofür aber aufgrund der Datengröße im GPT kein Platz mehr bĺeibt. Daher benötigt Grub bei einem Bootsektor mit GPT eine eigene, kleine Partition. Im Web ist an verschiedenen Stellen von 1-2 MB die Rede, ich habe dann 3 MB genommen. Diese Partition muss dann mit dem Flag (der Markierung) "bios_grub" versehen werden. Diese Markierung lässt sich erst nach der Umwandlung des Bootsektors setzen. Eine weitere Schwierigkeit ist, dass sich bei meinen Versuchen herausgestellt hat, dass die Grub-Partition scheinbar auf der ersten Partition der Festplatte liegen muss. Was bei mir dazu geführt hat, dass ich Teile meiner alten Installation durch erstellen neuer Partitionen mit gparted und anschließendem kopien der Daten mit "cp -rp" auf die neu erstellte Partition überführen musste, damit sich das Device ändert. Ist die Festplatte dann entsprechend eingerichtet, muss im letzten Schritt der Grub der vorhandenen Installation neu installiert werden. Hierzu wechselt man aus der Session, mit der gparted gestartet wurde (in der Regel eine Live-Linux-Version) in eine chroot-Umgebung, mit der Verzeichnisstruktur der alten Installation als / Ich habe festgestellt, dass sich hier Arch-Derivate sehr gut eignen. Bei Arch wird ein Skript mitgeliefert, das sich um alle mounts kümmert, die für eine funktionierende chroot-Umgebung nötig sind. Der Aufruf "arch-chroot '/-Verzeichnis der chroot-Umgebung'" erzeugt ohne weitere Schritte eine funktionierende chroot-Umgebung der vorhandenen Installation. Dort kann man dann mit den folgenden zwei Befehlen den Bootloader wieder zum Laufen bringen: grub-install --target=i386-pc --recheck --debug /dev/sdX grub-mkconfig -o /boot/grub/grub.cfg Wobei /dev/sdX das Device bezeichnet, auf dem sich die Installation befindet. (Also keine Partition) Danach sollte Grub2 das Linux wieder booten. ich hoffe, das war halbwegs verständlich. Vielleicht kann ja jemand was damit anfangen. Ich würde allerdings empfehlen, das Verfahren vorher in einer VM zu testen. Ich meine zwar, alle Schritte genannt zu haben, aber man kann ja nie wissen. Gruß Thomas
Teilnehmer (1)
-
Thomas Könning