次のようにsystemd-boot設定を更新してみました。https://wiki.archlinux.org/index.php/systemd-boot
起動メニューにWindows 10を追加しようとしています。これは私のドライブです。
kaisellgren@pop-os:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 931,5G 0 disk
├─sda1 8:1 0 128M 0 part
└─sda2 8:2 0 931,4G 0 part
sdb 8:16 0 931,5G 0 disk
├─sdb1 8:17 0 16M 0 part
├─sdb2 8:18 0 600M 0 part /boot/efi
└─sdb3 8:19 0 930,9G 0 part /
nvme0n1 259:0 0 465,8G 0 disk
├─nvme0n1p1 259:1 0 499M 0 part
├─nvme0n1p2 259:2 0 99M 0 part
├─nvme0n1p3 259:3 0 16M 0 part
└─nvme0n1p4 259:4 0 465,2G 0 part
ご覧のとおり、私のブートSATA3ドライブはsdb(パーティションsdb2)です。
私の/EFI/Microsoft/Boot/bootmgfw.efi
ブートローダはパーティション2のnvme0n1ドライブにあります(確認しました)。
だから私はこれを作りました:
kaisellgren@pop-os:~$ sudo cat /boot/efi/loader/entries/windows.conf
title Windows
efi /EFI/Microsoft/Boot/bootmgfw.efi
options root=UUID=4C58-E6DF
ここからルートドライブUUIDを取得しました。
kaisellgren@pop-os:~$ ls -l /dev/disk/by-uuid/
total 0
lrwxrwxrwx 1 root root 10 Jul 10 18:53 02165C56165C4D33 -> ../../sda2
lrwxrwxrwx 1 root root 15 Jul 10 18:53 160469B004699391 -> ../../nvme0n1p4
lrwxrwxrwx 1 root root 15 Jul 10 18:53 3C025449025409F2 -> ../../nvme0n1p1
lrwxrwxrwx 1 root root 15 Jul 10 18:53 4C58-E6DF -> ../../nvme0n1p2
lrwxrwxrwx 1 root root 10 Jul 10 18:53 5B44-2C7F -> ../../sdb2
lrwxrwxrwx 1 root root 10 Jul 10 18:53 646d95a4-1bb4-45c0-96bc-3ee20c4b4211 -> ../../sdb3
これは私のローダー構成です。
kaisellgren@pop-os:~$ sudo cat /boot/efi/loader/loader.conf
default Pop_OS-current
timeout 5
コンピュータを起動すると、現在のPopOSと既存のPopOSという2つのオプションを持つ起動メニューが表示されます。リストにWindowsエントリは表示されません。私は何が間違っていましたか?タイムアウトパラメータを変更すると起動メニューに影響を与えるため、正しい設定ファイルを必ず編集してください。
すべての助けに事前に感謝!
答え1
久しぶりに解決策を見つけました。 Linuxパーティションから起動し、Windows EFIパーティションをフォルダにマウントし、Microsoftフォルダを/boot/EFI/
(Linuxシステム上で)コピーします。それがすべてです。
ローダーエントリにwindows.confを手動で追加する問題で説明されているプロセスは私には必要ありませんでした。
もともと記載された詳細なコピープロセスは次のとおりです。
sudo fdisk -l
100M
サイズと種類のパーティションを見つけますEFI System
。サイズと種類が他のパーティションと同じディスクにある場合は、499M
正しいことがわかりますWindows recovery environment
。たとえば、EFIパーティションのデバイス名を書き留めます/dev/nvme0n1p2
(以下のmountコマンドで使用します)。
ディレクトリを作成し、ここにWindows-EFIパーティションをマウントします。
sudo mkdir /mnt/winefi
sudo mount /dev/nvme0n1p2 /mnt/winefi
ブート構成データ(BCD)をsystemd-boot EFIメニューにコピーし、Windowsパーティションをアンマウントします。
sudo cp -R /mnt/winefi/EFI/Microsoft/ /boot/EFI/Microsoft
sudo umount /mnt/winefi
sudo rm -rf /mnt/winefi
これは、ArchのGPT / MBR / UEFI / BIOS設定がWindowsと同じ場合にのみ機能します。たとえば、systemd-bootをチェーンロードArch = GPT/UEFI
できません。Windows=Bios/MBR
よりウィキペディア。