web-dev-qa-db-ja.com

WindowsからWindows 10のブートローダを修正する方法

私はWindows 10がインストールされているシステムにUbuntuをインストールしました。私は通常GRUBを使ってWindowsまたはUbuntuから起動することができます。 Ubuntuパーティションを削除したいのですが、最初にWindows 10 MBRを復元する必要があります。

InWindows REでBootrec.exeを使用して起動時の問題をトラブルシューティングします(Windows 7およびWindowsに適用) Vista)彼らはオプション/FixMbr/FixBootを付けてBootrec.exeを使うように言っています、しかし私がコマンドプロンプトで "bootrec.exe/FixMbr"をタイプすると、Windowsは言います:

'bootrec.exe'は、内部コマンドまたは外部コマンドとして認識されていません。

私はWindows 10で起動してそこからコマンドプロンプトを実行することができると言っています(インストール媒体を使用する必要はありません)が、何を入力すればよいかわかりません。

42
Codyfly

Windows 8/8.1/10でMBRを修正するためのコマンドは "bootsect.exe"です。

bootsect /nt60 drive_letter: /mbr

これにより、 "drive_letter:"にマッピングされたパーティションのブートレコードと、パーティションが配置されているディスクのMBRが修正されます。

C:\Windows\system32>bootsect

bootsect {/help|/nt60|/nt52} {SYS|ALL|<DriveLetter>:} [/force] [/mbr]

Boot sector restoration tool

Bootsect.exe updates the master boot code for hard disk partitions in order to
switch between BOOTMGR and NTLDR.  You can use this tool to restore the boot
sector on your computer.

Run "bootsect /help" for detailed usage instructions.

あるいは、bcdboot.exe、bootsect.exe、およびブートセクタビューのような他の便利な機能へのグラフィカルインタフェースを持つ " デュアルブート修復ツール "を使用することもできます。そして... ... Windows 10/8/7/Vista用のワンクリックデュアルブート修復機能(Windows XPブートファイルも修正できます)。

78
snayob

私は以下の問題を抱えていました:

UbuntuとWindows 10を持っていて、Windows 10を使ってUbuntuパーティションを削除しました。再起動後、Partition not foundエラーが発生し、自動的にGRUBに入りました。

これが私がそれを解決した方法です:

  1. 私は Windows 10 CD を焼き、トラブルシューティングに入り、そしてそこから私はWindowsコンソールに入りました。
  2. それから私は次のように入力しました:bootsect /nt60 drive_letter: /mbr(drive_letterをあなたの手紙に置き換えてください。例えば、私にとってはC: /mbrでした)。
  3. そしてそれはついにうまくいきました。

私もこれが私と同じ問題を抱えている人々のための解決策を明らかにしてくれることを願っています。

8
Tony

ここに挙げた他の答えはMBR/BIOSシステムではうまくいきますが、私のようにUEFIシステムを使っている場合、bootsectGPT保護MBRの上に半機能ブートMBRを書くだけです。bootrecは単に "Access denied"エラーメッセージを表示するだけで、どちらも壊れた EFIシステムパーティション を修正する機能オプションを持っていません。/GPTドライブは、MBRに格納されていたブートローダを含むものです。残念ながら、UEFI Windowsブートマネージャを修正するための最新のガイドはありません(ほとんどすべてのものがグラフィカルなスタートアップ修復ユーティリティを実行すると言っていますが、それがすべてのケースで問題を解決するわけではありません)。 この記事 に埋め込まれた正しい解決策。代わりに bcdboot コマンドを使用する必要があります。

  1. Media Creation Tool を入手して、自分でWindows 10インストールDVDまたはUSBドライブを作成してから起動します。

  2. メッセージが表示されたら、[コンピュータの修復]、[トラブルシューティング]、[詳細オプション]、[コマンドプロンプト]の順に選択します。

  3. diskpartを実行してからlist volumeを実行します。 EFIシステムパーティション(ESP)のボリューム番号を書き留めます。

  4. ここでselect volume x(ここでxはESPのボリューム番号です)を実行してからassign letter=N:を実行してパーティションをマウントします。もう一度list volumeを実行し、ESPにドライバの文字が割り当てられていることを確認します。 exitを実行してdiskpartをそのままにします。

  5. (省略可能)現在デュアルブートではなく、新しいブートローダーを作成する前にESPを完全に消去したい場合は、format N: /FS:FAT32を実行してFAT32として再フォーマットします。 bcdbootは物事をきれいにするのに良い仕事をしているように見えるので、これは通常の状況下ではおそらく必要ないでしょう。特にLinuxのディストリビューションが別のパーティションにある場合、そうでなければGRUBを再インストールする必要があります。 。また、ESP上のGRUBの既存のディレクトリを削除しない限り、以下の手順はEFI GRUBインストールには影響しません。

  6. 最後に、新しいブートローダをbcdboot C:\windows /s N: /f UEFIでパーティションに書き込みます。このコマンドは、C:\ windowsにマウントされたWindowsインストールを使用して、N:にマウントされたESP上に新しいUEFI互換ブートローダを再構築します。完了したら、dir N:\EFIを実行して新しいブートローダーが書き込まれたことを確認できます。ここには、新しいWindowsブートマネージャーを含むMicrosoftディレクトリと、フォールバックブートローダーを含むbootディレクトリがあります。 Linuxの場合はGRUBのようにインストールされます。

  7. (省略可能)デュアルブートの場合は、おそらくGRUBスクリプトが新しいWindowsブートローダーを検出して追加できるように、Linuxディストリビューションを起動してSudo update-grubを実行する必要があります。次のステップを飛ばして最初のブート選択としてGRUBのままにしておくと、両方のオペレーティングシステムにアクセスできます。

  8. 今すぐあなたのBIOSセットアップを起動し、「Windows Boot Manager」が一番の起動選択として設定されていることを確認してください。保存して再起動すると、ついにWindowsに戻ります。

1
Nathan2055