
Um Windows mit minimalem Aufwand von einer „Legacy“/BIOS-Installation auf UEFI zu konvertieren stellt Microsoft seit dem „Creators Update“ (1703) das Tool MBR2GPT zur Verfügung. Es ist damit nicht mehr nötig, Windows für die Konvertierung BIOS-UEFI neu zu installieren!
Das Tool übernimmt wie der Name bereits andeutet die Konvertierung einer Disk von Master Boot Record (MBR) auf GUID Partition Table (GPT). Außerdem wird im Rahmen des Konvertierungsprozesses die Systempartition verkleinert und eine EFI Systempartition angelegt.
Der Vorgang kann entweder in einer Windows PE Umgebung oder direkt im laufenden OS durchgeführt werden. Da es sich um einen tiefgreifenden Eingriff ins System handelt empfehle ich vorher, kritische Daten zu sichern!
Microsoft Mechanics hat den Prozess in ein Demo-Video verpackt:
Der folgende Ablauf hat sich für mich bewährt:
- Prüfen, ob die zu konvertierende Disk tatsächlich unter MBR läuft.
- Sichern der BitLocker Recovery-Keys.
- BitLocker pausieren.
- MBR2GPT im „Validate“ Modus ausführen und auf Fehler prüfen.
- Die MBR2GPT Konvertierung ausführen.
- Den Rechner rebooten und dabei von BIOS (Legacy) auf UEFI (Native) wechseln. Ggf. gleich Secure Boot aktivieren.
- Wenn BitLocker nicht automatisch wieder startet die Datei ReAgent.xml im Verzeichnis <C:\Windows\System32\Recovery> in .bak umbenennen und BitLocker manuell starten.
Der Prozess lässt sich nicht zu 100% automatisieren, da man beim Reboot die Firmware-Settings manuell anpassen muss. Die einzelnen Schritte lassen sich aber gut mit PowerShell durchführen:
Den PartitionStyle der Systempartition mit Get-Disk prüfen:
PS C:\> Get-Disk | select Number,FriendlyName,OperationalStatus,PartitionStyle Number FriendlyName OperationalStatus PartitionStyle ------ ------------ ----------------- -------------- 0 KINGSTON SH103S3240G Online MBR
Den BitLocker Recovery Key wahlweise ins Active Directory oder das AAD/Intune Gerätekonto sichern:
PS C:\>$BLV = Get-BitLockerVolume -MountPoint "C:" # Local AD PS C:\>Backup-BitLockerKeyProtector -MountPoint "C:" -KeyProtectorId $BLV.KeyProtector[0].KeyProtectorId # Azure AD / Intune PS C:\>BackupToAAD-BitLockerKeyProtector -MountPoint "C:" -KeyProtectorId $BLV.KeyProtector[0].KeyProtectorId
Die Systempartition mit MBR2GPT validieren. Um das Tool im laufenden OS zu nutzen muss man den Parameter „/AllowFullOS“ angeben.
Anhand der Log-Ausgabe sieht man auch schnell, ob man zB. vergessen hat, BitLocker vorher zu deaktivieren. ;)
C:\WINDOWS\system32> MBR2GPT.EXE /validate /allowfullos MBR2GPT: Attempting to validate disk 0 MBR2GPT: Retrieving layout of disk MBR2GPT: Validating layout, disk sector size is: 512 bytes MBR2GPT: Validation completed successfully
Den MBR2GPT Konvertierungsvorgang durchführen:
C:\WINDOWS\system32> MBR2GPT.EXE /convert /allowfullos MBR2GPT will now attempt to convert the default book disk. If conversion is successful the disk can only be booted in GPT mode. These changes cannot be undone! MBR2GPT: Attempting to convert disk 0 MBR2GPT: Retrieving layout of disk MBR2GPT: Validating layout, disk sector size is: 512 bytes MBR2GPT: Trying to shrink the OS partition MBR2GPT: Creating the EFI system partition MBR2GPT: Installing the new boot files MBR2GPT: Performing the layout conversion MBR2GPT: Migrating default boot entry MBR2GPT: Adding recovery boot entry MBR2GPT: Fixing drive letter mapping MBR2GPT: Conversion completed successfully Call WinReReapir to repair WinRE MBR2GPT: Failed to update ReAgent.xml, please try to manually disable and enable WinRE. MBR2GPT: Before the new system can boot properly you need to switch the firmware to boot to UEFI mode!
MBR2GPT versucht bei der Konvertierung grundsätzlich, die BitLocker Recovery Agents zu aktualisieren, funktioniert hat das bei meinen Clients jedoch nicht. Es ist daher nach dem Reboot nötig, die Datei ReAgent.xml umzubenennen und BitLocker manuell wieder zu starten.
PS C:\> Rename-Item -Path C:\Windows\System32\Recovery\ReAgent.xml -NewName ReAgent.bak PS C:\> Resume-BitLocker -MountPoint "C:"
Quellen:
- Microsoft Docs: Convert MBR Partition to GPT