Grub が Windows 10 を起動しない

Grub が Windows 10 を起動しない

別のパーティションに、Windows 10 の横に Elementary OS をインストールしました。ブートローダー メニュー (Grub) で起動すると、Elementary OS と Windows の両方を選択できます。Linux は正常に起動しますが、Windows を選択しても同じメニューが返され、状況がループします。

Windows 10 インストール CD を使用して Grub を Windows ブートローダーで上書きするというアイデアを思いつきましたが、この手順に関する次の記事を見つけました。

https://www.howtogeek.com/howto/32523/how-to-manually-repair-windows-7-boot-loader-problems/ https://www.howtogeek.com/141818/how-to-uninstall-a-linux-dual-boot-system-from-your-computer/ https://askubuntu.com/questions/133533/how-to-remove-ubuntu-and-put-windows-back-on

これはGrubの写真です:https://1drv.ms/u/s!Ari0rc2rwPVYsBbdiTExfq4nm772?e=kS3OaC

Windows を回復するにはどのような方法をお勧めしますか。私の方法は適切でしょうか。プロセスに関して何か推奨される資料やアドバイスはありますか。

答え1


Linux は正常に起動しますが、Windows を選択しても同じメニューが返され、状況がループします。

同様の質問がたくさんあるので、ここではこれについては書きません。

Windows 10 インストール CD を使用して Grub を Windows ブートローダーで上書きするというアイデアを思いつきましたが、この手順に関する次の記事を見つけました。

これらの手順に従うことをお勧めします!! 自分で試しました!!


Windows ブートローダーを使用して Linux を起動する方法


いくつかのポイント

BIOS + MBRを想定

Ubuntu向けに書かれていますが、すべてのディストリビューションに適用されます


要するに私たちは何をするつもりなのか

これには、Ubuntu パーティションのブート レコードを Windows にコピーし、BCDEdit を使用してそのファイルを指す新しいエントリを BCD ストアに作成することが含まれます。これにより、Windows は起動時に Windows と Ubuntu のどちらかを選択できるメニューを表示します。


ドライブが次のようにパーティション化されていると仮定します(状況に応じて修正してください

/dev/sda1 - 100 MB - Win 予約済み

/dev/sda2 - 252 GB - Win (c: ドライブ)

/dev/sda3 - 31000 MB - Ubuntu {マウントポイント - }}

/dev/sda5 - 1000 MB - スワップ {論理}

/dev/sda6 -生成された .bin ファイルを Linux から Windows に移動するためにオプションで作成されます- FAT32 ファイル システム - {マウント ポイント - /media/share}


インストール部分selecting drivesは好みに基づいているため、省略します。


インストール中の重要なステップは、Ubuntu インストーラにシステム ブートローダ (GRUB 2) をインストールする場所を指示することです。/dev/sda にブートローダをインストールするとディスクのマスター ブート レコードが上書きされてしまうため、/dev/sda1 や /dev/sda2 にインストールすることは避けてください。Windows ブートマネージャ ファイルとブート構成データ、またはオペレーティング システム自体が上書きされてしまうためです。代わりに、Ubuntu オペレーティング システムを格納するパーティション (この場合は /dev/sda3) に Ubuntu のブートローダをインストールしましょう。これを行うには、次のドロップダウン リストをクリックします。

「ブートローダーインストール用デバイス」

選択して

/dev/sda3

Ubuntu ブートローダーのインストールに適したパーティションを示すスクリーンショット


「今すぐインストール」を選択すると、Ubuntu がインストールを開始します。完了すると、再起動するか「テストを続行」するかを尋ねられます。次の手順ではターミナルにアクセスする必要があるため、「テストを続行」を選択してください。 Note : it is important not to reboot now otherwise this methods will not work

Ubuntuをデュアルブート用に設定する

ディスクのパーティション分割と Ubuntu のインストールが完了したので、Windows または Ubuntu を起動するようにシステムをセットアップしましょう。


生成されたブート レコード ファイルを Windows に移動する方法が必要です。これは、Windows で ntfs ドライブ/USB または EXT4 ドライバーを使用して、さまざまな方法で実現できます。fat32 パーティションを作成したので、ここでそれを使用します。必要に応じて、他の方法を使用してください。


まず、作成した FAT32 パーティションのマウント ポイントを作成しましょう (すでに指摘したように、これはオプションです)。ターミナルを開いて、次のように入力します。

sudo su

mkdir /mnt/share 

次に、このディレクトリに正しいデバイスをマウントしましょう。上記のパーティション分割手順で、FAT32 パーティションがデバイス /dev/sda6 にあることを思い出してください。

mount /dev/sda6 /mnt/share 

ブートレコード .bin ファイルの生成

Ubuntu パーティションの最初の 512 バイトをファイルに書き込み、そのファイルを FAT32 パーティションにコピーします。

dd if=/dev/sda3 of=/mnt/share/ubuntu.bin bs=512 count=1

注: 前述の手順で FAT32 パーティションを使用するかどうかはオプションです。 *.bin ファイルをコピーするために USB ドライブなどの別のデバイスを使用することもできます。

Ubuntu ライブ システムを終了し、Windows を再起動します。その途中で、Windows がディスク チェックを実行するのが見える場合があります (心配しないでください。これは正常であり、これらの手順の結果として 1 回だけ発生します)。Windows にログインし、作成した FAT32 ボリュームを開くと、ubuntu.bin ファイルが表示されます。そのファイルを Windows ボリュームのルート (例: C:) にコピーします。

Windowsをデュアルブート用に構成する

ここで、BCDEditを使用してWindowsのBCDストアにエントリを追加します。BCDEditを使用するには管理者権限が必要なので、Win+rを押してcmdと入力し、

Ctrl+Shift+Enter キー

まず、Linux ディストリビューションのエントリを作成しましょう。必要に応じて、別のエントリ名を自由に選択できることに注意してください。

bcdedit /create /d “Ubuntu” /application bootsector

BCDEdit は、このエントリの英数字の識別子を返します。残りの手順では、これを {ID} と呼びます。{ID} を実際に返された識別子に置き換える必要があります。{ID} の例は {d7294d4e-9837-11de-99ac-f3f3a79e3e93} です。次に、linux.bin ファイルのコピーをホストするパーティションを指定します。

bcdedit /set {ID} device partition=c:

ubuntu.bin ファイルへのパス:

bcdedit /set {ID}  path \ubuntu.bin

起動時に表示されるメニューへのエントリ:

bcdedit /displayorder {ID} /addlast

最後に、メニューの選択肢が表示される時間を指定します。

bcdedit /timeout 30

これで完了です。再起動すると、Windows または Ubuntu の起動を選択できるメニューが表示されます。Ubuntu を選択すると、ブートローダー メニューが表示され、Ubuntu の起動を続行するかどうかを選択できます。

最後に、Ubuntu メニュー オプションを削除したい場合は、次のコマンドを使用して作成した BCD ストア エントリを削除するだけです。

bcdedit /delete {ID}

関連情報