既定では、Windows 8の起動オプションが失われ、Windowsインストールメディアの起動回復によって問題が解決されませんでした。
これはややWindowsの問題であることを知っていますが、efibootmgr
より厄介なWindowsベースのコマンドを使用するソリューションよりもソリューションを探していますbcdedit
。したがって、私はスーパーユーザーの代わりにここに尋ねます。
詳細な背景はここデフォルトでは、私のシステムは最初にBIOS / MBR / CSMモードに設定され、Windows 10がそこにインストールを拒否したため、MBRディスクをGPTに変換する必要がありました。その後、Linux側ですべてが正常に機能しましたが、Windowsインストールメディアを介してWindowsブートを変更できませんでした。
- すべてのLinux OS /パーティションが見つかりました
update-grub
が、GRUBメニューにWindows 8はありません。 os-prober
また、私のWindows 8を一覧表示または見つけることができません。
次のコマンドを使用してWindows 8を起動項目として再度追加することが回避策であることを願っていますが、efibootmgr
ここで迷子になって助けが必要です。現在のパーティションモードなど、より詳細な情報を再確認できます。ここ。ありがとうございます。
/EFI
私のWindows 8はBIOS / MBR / CSMモードでインストールされていますが、そこにディレクトリが表示されないため、EFIブート機能はありませんか?私のWindows 8パーティションのすべてのルートレベルのディレクトリは次のとおりです。
$Recycle.Bin/ ProgramData/
$WINDOWS.~BT/ Programs/
$Windows.~WS/ Recovery/
BOOTNXT Recovery.txt
BOOTSECT.BAK System Volume Information/
Boot/ Tmp/
Documents and Settings/ Users/
ESD/ Windows/
Intel/ bootmgr
Program Files/ pagefile.sys
Program Files (x86)/ swapfile.sys
efibootmgr
あるいは、まったく必要ではなく、/etc/grub.d/40_custom
以下のカスタム項目のみが必要になる場合があります。
menuentry "Windows 8 BIOS MBR" {
insmod part_msdos
insmod ntldr
insmod ntfs
ntldr (hd0,msdos1)/bootmgr
}
答え1
いいですね。 @FelixJNのリクエストに応じて、リンクの代わりに答えがここにあります。
少なくともntldr
「Windowsの読み込み」を使用することがbootmgr
過去に使用した方法だったので、私の意図はLinuxベースのソリューションを選択することでした。同様に、次のように動作します。grub
grub4dos
menuentry "Windows 8 UEFI/GPT" {
insmod part_gpt
insmod search_fs_uuid
insmod chain
search --fs-uuid --no-floppy --set=root 28cf-35de
chainloader ($root)/EFI/Microsoft/Boot/bootmgfw.efi
}
しかし、私は grub2 とその文書に対する確信があまりないので、試していないし、代わりに @telcoM が要約したように Windows 用のソリューションに切り替えました。
UEFIモードでブートリカバリプロセスを実行して、Windows UEFIブートローダをESPパーティションに書き込みます。
詳細な手順は次のとおりです。ここ。
メディア(DVD/USB)をコンピュータに挿入し、再起動。
メディアから起動します。
選ぶコンピュータを修理する。
選ぶトラブルシューティング。
選ぶコマンドプロンプトメニューから:
次のコマンドを入力して実行します。
diskpart
次のコマンドを入力して実行します。
sel disk 0
次のコマンドを入力して実行します。
list vol
EFIパーティション(EPS - EFIシステムパーティション)がFAT32ファイルシステムを使用し、ドライブ文字を割り当てていることを確認します(未使用のドライブ文字割り当て)。
次のコマンドを入力して実行します。
sel vol <number of volume>
次のコマンドを入力して実行します。
assign letter=<drive letter>:
次のコマンドを入力して実行します。
exit
ブートレコードを回復するには:
次のコマンドを入力して実行します。
cd /d <drive letter>:\EFI\Microsoft\Boot\
次のコマンドを入力して実行します。
bootrec /FixBoot
この時点で、次のステップはすべてのオペレーティングシステムで同じです。
BCDストレージの再構築
まず、次のコマンドを実行して前のBCDをバックアップします。
ren BCD BCD.old
次に、次のコマンドを使用して再生成します。
bcdboot c:\Windows /l en-us /s <boot letter>:All