web-dev-qa-db-ja.com

このMB2GPTの問題を解決するにはどうすればよいですか?

再インストールせずに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パーティションが見つからないのはなぜですか?

重要な情報

質問があったので、フォーマットしてゼロから始めました。私は答えをテストすることができないので、答えは受け入れられません。この問題に精通している人は誰でも、最終的に投稿される回答に賛成または反対の投票をする機会を利用する必要があります。

1
FarO

@merleの非常に役立つ答えを明確にするために、以下のコマンドを実行して、作業中のEFIブートデータをmbr2gptが検出できる場所にコピーする必要がありました。

bcdboot c:\Windows /f bios /s c:

これを実行すると、mbr2gptを正常に実行できるようになります。

注:私のシステムはすでにUEFIモードでMBRディスクを起動していました。そのため、通常の場所にはBCDデータがありませんでした。これにより、その問題が修正され、mbr2gptがそれを実行できるようになります。

3
Vince Anido

私の状況では、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!
2
merle

上記のすべての解決策を試しましたが、どれもうまくいきませんでした。しかし、私は問題の主な理由を見つけて解決しました。 diskpartを実行してパーティションの詳細を確認したところ、システム予約済みパーティションのみが「アクティブ」とマークされ、「C」パーティションはマークされていないことがわかりました。アクティブに設定してからmbr2gptを実行すると、機能しました。

  1. CMDを実行します。
  2. 引用符なしで「diskpart」と入力します。
  3. 「listdisk」と入力します。
  4. 「selectdisk#」と入力し、#を必要なディスク番号に置き換えます。
  5. 「listpartition」と入力します。
  6. 「selectpartition#」と入力し、#をシステム予約ではなくシステムパーティションの番号に置き換えます。
  7. 「詳細パーティション」と入力します。
  8. パーティションの詳細が表示されます。 「アクティブ」の前に「いいえ」と表示されている場合は、「アクティブ」と入力します。

そして、あなたは行ってもいいです!

2
Zabota