web-dev-qa-db-ja.com

Windows 10をGRUB OSリストに追加します

私は最近、学校からコンピューターを受け取りました。 Windows 8.1がインストールされています。その後、Windows 8.1の別のコピーをインストールし(組み込みのWindows Proライセンスを使用します)、Windows 10にアップグレードしました。次に、Windows 8と10の両方にUbuntuをインストールしました。

/ boot用に別の255MB ext2パーティションを作成したことに注意してください。

さて、コンピューターを起動すると、Windows 8とUbuntuのオプションで最初にGRUBプロンプトが表示されます(grub Prompt 'c'のように私はそれが好きです)。ただし、Windows 10オプションはありません。 Ubuntuを選択すると、コンピューターがUbuntuで起動します。ただし、Windows 8オプションを選択すると、Windowsブートローダーに送信され、そこでWindows 8またはWindows 10を起動するオプションが提供されます(ただし、この時点で、コンピューターは既にカーネルと。どうやらMicrosoftはboot loaderの概念を誤解しており、それが「実際にブートローダーを表示する前にシステム全体を実際にブートする」ことを決定したようです。

Windowsブートローダーを無効にし、Windows 10オプションをGRUBに追加するにはどうすればよいですか?編集:Windowsブートローダーを無効にするように言われた人がいます。ただし、GRUB OSリストにWindowsを追加する方法はまだわかりません。誰でもこれを助けることができますか?

編集2:Windows 10をEasyBCDを使用してWindowsブートローダーから削除した後、数回の再起動後、それが継続的に再表示され、Windows 10が再表示されるように見えました。しかし、その後msconfigのOSのリストからWindows 10を削除しましたが、削除されたままになっているようです。

ただし、Windows 10をGRUBに表示することはできていません。 GRUBは単にそれを検出しないかのようです。

また、これを質問に入れて人々に見えるようにします-boot-repairを使用してみましたが、何の助けにもなりませんでした。

24

つかいます:

Sudo update-grub
Sudo grub-install /dev/[BOOT PARTITION eg. Sda6]

ubuntuのターミナルのコマンド、おそらくそれはあなたの問題を解決します。

このコマンドにより、システムはWindowsインストールを自動的に検出し、GRUBリストに追加します。

22
Neel Shah

時々os-proberが間違っています。

たとえば、Windows 10パーティションのUUIDを確認します。

Sudo blkid /dev/sda2

次に/etc/grub.d/40_customを編集し、ファイルの最後に次を追加します。

menuentry "Windows 10" --class windows --class os {
   insmod ntfs
   search --no-floppy --set=root --fs-uuid $your_uuid_here$
   ntldr /bootmgr
}

UUIDを変更することを忘れないでください。

最後に、grub構成ファイルを更新します。

Sudo update-grub

ソース

16
noraj

このアプリEasyBCD for windowsを使用してください http://neosmart.net/EasyBCD/ 無料版をダウンロードしてインストールしてください。

開くと、Windows 8のエントリとWindows 10のエントリが表示されます。

windows 8のエントリを削除すると、準備が整います。

Update上記の手順を実行した後、Ubuntuに戻り、

を押して端末を開きます ctrl+alt+T

このコマンドを次々にコピーして、

Sudo add-apt-repository ppa:yannubuntu/boot-repair
Sudo apt-get update
Sudo apt-get install -y boot-repair

これにより、boot-repairと呼ばれるツールをインストールします。

ダッシュからブート修復を開くと、このウィンドウが表示されます

enter image description here

推奨される修復を選択し、手順に従います。

ブート修復を使用するときは、インターネットに接続する必要があります。

8
RonnieDroid

このソリューションは、grub2メニューに適切なエントリを提供し、BIOSを参照せずにWindows 10に直接チェーンロードします。 https://ihaveabackup.net/article/grub2-entry-for-windows-10-uefi から来ているので、私は信用を主張しません。実用的なソリューションを見つけることができてとても安心

簡単に言うと、/ etc/grub.d/40_customを編集して追加します:

menuentry 'Windows 10' {
    search --fs-uuid --no-floppy --set=root CC66-4B02
    chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi
}

--set = root行のUUID(例ではCC66-4B02)を見つけるには、Sudo fdisk -lを使用してEFIパーティションを特定し、次にSudo blkid/dev/sda1(または何でも)を使用してEFIパーティションのUUIDを見つけます。 Windowsパーティションではなく、必要なEFIパーティションであることに注意してください。編集を保存したら、Sudo update-grubを実行して/boot/grub/menu.cfgファイルを生成し、テストのために再起動します。

7
peterthevicar

あなたの質問を理解している限り、1つまたは複数のハードドライブに2つの異なるWindowsインストールがあり、Windowsローダーが邪魔をしたり、両方のWindowsインストールを管理したりしたくありません。レガシセットアップでWindowsカーネルをGrubから直接起動することは可能だったことを思い出します(ここでは間違っているかもしれません)が、UEFIセットアップではこれを行うことができませんでした。 Grubから独立して呼び出すことができる2つの独立したWindowsブートローダー構成は、探しているものに非常に近いはずです。

Windows 8.1がインストールされています。

これはUEFI対応のコンピューターであると想定します。

  1. コンピューターが実際にUEFI対応であることを確認し(そうでない場合は回答を削除します)、BIOSとUEFIの違いに精通してください( 異なるブートモード 、efibootmgr、異なるパーティションテーブル、EFIシステムパーティション(ESP)、EFIローダー…)。
  2. 次に、すべてのOSがUEFIモードでインストールされていること、および check にGPTパーティションテーブルがあることを確認します。 Windowsのdismを使用してパーティションを新しいパーティションテーブルレイアウトにバックアップおよび復元し、最新のWindowsインストールメディアからコマンドプロンプトを使用してブートローダーを再インストールできます。詳細については次のポイントで説明します。
    • 問題に対処しない他のさまざまなツールを試してみることをお勧めしているため、これらの変更を元の状態に戻す必要があります。そうしないと、ますます混乱を招きます。ごめんなさい:(
  3. GRUBを介してUEFIモードでレガシーMBRパーティションからWindows 8を起動する方法? からの回答を使用できます。
    • この回答は、Grubが呼び出す別の場所にbcdbootを介して、独立したWindowsブートローダー構成をインストールします。便宜上、Windowsルートパーティションを選択しました。 every Windowsインストールでこれを行う必要があります。これにより、すべてのWindowsインストールが独自に起動し、それ自体を起動します(個々のWindowsブートメニューを他のエントリから消去します)。
    • /etc/grub.d/40_customで起動するWindowsインストールごとに個別のエントリを作成し、UUID、パーティション、パーティションテーブルに関する指示と説明に従う必要があることに注意してください。
    • おそらく、GrubのOS-prober( GRUB_DISABLE_OS_PROBER )などの異なるOSを検出するすべての準スマート機能を無効にするか、Windowsまたはブート修復のブート問題のトラブルシューティング(または手動でクリーンアップ)します。

注:あなたの要求は、GrubですべてのOSを管理できるようにすることでしたが、UEFIでは、従来の「デュアルブート」という用語はほとんど間違った名前になります。 UEFIでは、ESPに複数のブートローダーを共存させることができ、ブートするものを選択できます(UEFIファームウェアに登録されていて、製造元のファームウェアがWindowsのブートのみのように仕様を守っていない場合) 。 ここで悲しいことは、Windows、Linux、またはUbuntuの1つのリリース1台のコンピューター(または複数のコンピューターで使用され、各コンピューターで同じOSリリースの異なるインストールを起動するハードドライブ)。これのほとんどはすでに可能ですが、WindowsとUbuntu(Fedoraなど)のメカニズムは、1つしか存在できないという誤った仮定の下で、名前空間にあるものを上書きすることを明白に選択します。

(Windows8/10、Ubuntu、Ubuntu LTS、Fedoraをoneコンピューターで起動し、異なる要件の下でUEFI起動を数回いじりました。)

4
LiveWireBT

Ubuntu OSにログインし、ターミナルを開きます。

Sudo update-grub

リブート

1
Nidhan