再インストールせずにWindows10をBIOS/MBRブートからUEFI/GPTに移行するにはどうすればよいですか? Windows 10 CUが提供するMBR2GPTツールを使用して、再インストールせずにシステムディスクをGPTに変換できます。現在、Windows 10Creatorsアップデートも使用しています。
試してみたところ、「OSパーティションが見つからない」というエラーが発生しました。
これは完全なログです:
2017-06-14 00:26:34, Info MBR2GPT was explicitly asked to run in full OS mode.
2017-06-14 00:26:34, Info MBR2GPT: System disk number is 0
2017-06-14 00:26:34, Info MBR2GPT: Attempting to validate disk 0
2017-06-14 00:26:34, Info MBR2GPT: Retrieving layout of disk
2017-06-14 00:26:34, Info MBR2GPT: Initial partition information
2017-06-14 00:26:34, Info ===========================================================
2017-06-14 00:26:34, Info Partition layout for disk: 0
2017-06-14 00:26:34, Info Partition style : MBR
2017-06-14 00:26:34, Info MBR signature: 1967564465
2017-06-14 00:26:34, Info Number of partitions : 2
===================PARTITION===============================
Number: 1
Type: 7
Boot: Yes
Recognized: Yes
Style: 0
Offset: 1048576
Length: 499621322752
Volume: \\?\Volume{7546a6b1-0000-0000-0000-100000000000}\
Drive: C:\
NT Path: \Device\HardDisk0\Partition1
===================PARTITION===============================
Number: 2
Type: 7
Boot: No
Recognized: Yes
Style: 0
Offset: 499628171264
Length: 477078016
Volume: \\?\Volume{7546a6b1-0000-0000-00e0-285474000000}\
Drive: None
NT Path: \Device\HardDisk0\Partition2
===========================================================
ESP partition size will be 104857600
MBR2GPT: Validating layout, disk sector size is: 512 bytes
Opening store. Flags: 0x0
Store path: "\??\GLOBALROOT\device\harddisk0\partition1\Boot\BCD"
Loaded Hive at BCD00000000
Opening object {9dea862c-5cdd-4e70-acc1-f32b344d4795}
FindOSPartitions: Default boot entry: {ECE3CBB0-2B25-11E7-9886-AC950A4FD9A0}
Opening object {ece3cbb0-2b25-11e7-9886-ac950a4fd9a0}
VERBOSE: Device path: \Device\HarddiskVolume1
VERBOSE: Dos path: \\?\GLOBALROOT\Device\HarddiskVolume1
FindOSPartitions: Volume name for the default boot entry: \\?\Volume{7546a6b1-0000-0000-0000-100000000000}\
Opening object {1eb788fe-2b26-11e7-9886-ac950a4fd9a0}
GetOSDeviceVolume: Cannot get NT path for entry.[gle=0x000000ea]
FindOSPartitions: Cannot get volume name for the recovery boot entry. Error: 0x000000EA[gle=0x000000ea]
Cannot find OS partition(s) for disk 0[gle=0x000000ea]
何が起こっているのか私にはわかりません。
私のシステムには元々別のSSDがあり、Samsungツールを使用してOSを現在のSSDに移動し、後でそれをHackintosh with Chameleon(UEFI)ブートローダーに使用したことを知っています。これで、そのディスクはなくなりました。
それでも、Windows 10は正常に起動しています(もちろん、セキュアブートなし)。 OSパーティションが見つからないのはなぜですか?
重要な情報
質問があったので、フォーマットしてゼロから始めました。私は答えをテストすることができないので、答えは受け入れられません。この問題に精通している人は誰でも、最終的に投稿される回答に賛成または反対の投票をする機会を利用する必要があります。
@merleの非常に役立つ答えを明確にするために、以下のコマンドを実行して、作業中のEFIブートデータをmbr2gptが検出できる場所にコピーする必要がありました。
bcdboot c:\Windows /f bios /s c:
これを実行すると、mbr2gptを正常に実行できるようになります。
注:私のシステムはすでにUEFIモードでMBRディスクを起動していました。そのため、通常の場所にはBCDデータがありませんでした。これにより、その問題が修正され、mbr2gptがそれを実行できるようになります。
私の状況では、UEFI/MBRを起動していましたが、Chameleon UEFIブートローダーを使用していたので、これも当てはまるのではないかと思います。
MBR2GPT.exeはBIOSブートを想定し、BIOSBCDストアをチェックします。
[システムパーティション] \ Boot\BCD
実際のシステムストアがどこにあるかを見つける代わりに。 BIOS BCDに無効なエントリがあったため、MBR2GPTは、存在しないリカバリボリュームが見つからないと正しく文句を言いました。 BIOSBCDをからのEFIBCDに置き換えました
[システムパーティション] \ EFI\Microsoft\Boot
そしてMBR2GPTを実行することができました。
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 3
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
MBR2GPT: Before the new system can boot properly you need to switch the firmware to boot to UEFI mode!
上記のすべての解決策を試しましたが、どれもうまくいきませんでした。しかし、私は問題の主な理由を見つけて解決しました。 diskpartを実行してパーティションの詳細を確認したところ、システム予約済みパーティションのみが「アクティブ」とマークされ、「C」パーティションはマークされていないことがわかりました。アクティブに設定してからmbr2gptを実行すると、機能しました。
そして、あなたは行ってもいいです!