MountWalker schrieb:
Also zunächst mal danke für die vielen Erläuterungen und Verbesserung.
Jein, es löscht erstmal das Überinhaltsverzeichnis und ich brauche dann Datenrettungssoftware. Die hat dann eventuell keine Probleme, solange noch nichts überschreben worden ist, aber ich brauche sie - mit der Datenträgerverwaltung von Windows oder Gnome Disks oder Gparted allein wirds nichts. Dass die Daten an sich noch da sind, ist der Grund, warum die Frage in der letzten Zeile meines vorherigen Beitrags so formuliert ist, wie sie ist.
Geht diese Konvertierung wahlweise mit der Datenträgerverwaltung von Windows oder mit Gnome Disks oder mit (G)parted?
Das weiß ich leider nicht, ich hatte bisher nie den Bedarf. Wenn es eine Software kann, dann vermutlich am ehestens Gparted.
Das von Forist Inzersdorfer genannte Microsoft-Tool kannte ich bisher nicht!
Anbei die Dokumentation des Tools:
https://docs.microsoft.com/de-de/windows/deployment/mbr-to-gpt
MountWalker schrieb:
Oder brauche ich dann doch Datenrettungssoftware dafür? Spielt die Positionierung von "XP" eine Rolle, wenn Windows XP gar keine GPT kennt?
Ich habe die Frage nicht verstanden. Typischerweise partitioniert XP so, dass zumindest vorne Platz bleibt um die Konvertierung durchzuführen. Die 32-bit-Ausgabe von XP (die am meisten verbreitete Version) versteht GPT nicht, die 64-bit-Ausgabe kann wohl GPT-Datenträger lesen, aber nicht selber von einem solchen starten.
MountWalker schrieb:
Ist das wirklich bei aktuellen Dateisystemen so, dass die ganz sicher nur am Anfang geschrieben werden? Ich dachte eigentlich, dass ein fester Adressdatenblock am Anfang der Partition veraltet sei.
stark vereinfachtes Beispiel:
Wir wollen ein Partition um 40 Sektoren nach hinten verschieben. Bei einer Clustergröße von 8 Sektoren z.B. entspräche das einer Verschiebung um 5 Cluster.
In NTFS (aber auch bei FAT) werden die Speicherorter aller Dateien mit Hilfe von Clustern beschrieben.
Die absolute Sektoradresse (die der Festplatte ja übergeben werden muss) ergibt sich aus der Sektornummer des Partitionsanfangs + (in Sektoren umgerechnete Cluster-Zahl).
Fängt eine Partition bei Sektor 2048 an und der erste Cluster einer Beispielsdatei liegt bei Cluster 100 würde sich der erste Sektor der Datei bei 2048 + 8 *100 = 2848 befinden.
Ändern wir nun die Partitionstabelle und lassen die Partition bei Sektor 2088 anfangen, dann würde das Betriebssystem die Beispieldatei bei 2088 + 8*100 = 2888 suchen und auf den falschen Ort zugreifen.
Wir müssen also entweder die Sektoren der Partitionen physisch alle nach hinten verschieben (dann stimmt die relative Cluster-Adressierung wieder)
oder
wir müssen alle Cluster-Adressangaben innerhalb der Partition korrigieren.
Hinweis:
In meinem Beispiel habe ich jetzt vollkommen außer Acht gelassen, dass ja von Sektor 2048 bis 2088 auch Daten liegen können - die müssen in jedem Fall physisch verschoben werden.