ラップトップに2つのWindows10インスタンスがあります。
VisualBCDでブートエントリを確認すると、WindowsAの最初のエントリは次のようになります。
WindowsB用のものはこれです:
refind.confに2つのエントリを追加しました
menuentry "Work Station" {
icon \EFI\refind\themes\icons\os_win.png
volume 4:
loader \Windows\system32\winload.efi
}
menuentry "Music Station" {
icon \EFI\refind\themes\icons\os_unknown.png
volume 5:
loader \Windows\system32\winload.efi
}
再起動すると、最初にrEFIndブートローダーに入ります。これらの2つのエントリのいずれかを選択すると、winload.efiが見つからなかったというメッセージが表示されます。
自動的に検出されたエントリを選択し、Windowsブートローダーに戻ってから、Windows AまたはBを選択することによってのみ、これら2つのWindowsインスタンスの1つに戻ることができます。
最初にWindowsブートローダーにアクセスせずに、2つのWindowsインスタンスのいずれかを直接起動するにはどうすればよいですか?私はそれを理解することはできません。メニューエントリのボリューム部分で、CまたはDとボリュームのGUIDをすでに使用しました...
これを行う1つの方法は、2つのEFIパーティションを持つことです。
私はブートマネージャーとしてrEFIndを使用しています-これはスクリーンショットです:
ご覧のとおり、選択したOSは中央にあり、テキストにはBoot Microsoft EFI Boot from ESP
と表示されます。これにより、Disk2パーティション4でWindowsが起動します。左側のOSを選択すると、Boot Microsoft EFI Boot from EFI
と表示され、Disk0でWindowsが起動します。パーティション3(以下のパーティションを参照)。
これらは、このようにrefind.confを使用して自動的に取得されます(Windows 10の手動スタンザは、常に右側に表示されているため無効になっています気に入らなかった):
timeout 5
use_nvram false
# UI
hideui hints,arrows,badges
banner themes/colourful/10-6.png
selection_big themes/colourful/selection_big.png
selection_small themes/colourful/selection_small.png
showtools Shell,csr_rotate,Apple_recovery,shutdown
# mac stuff
csr_values 10,77
spoof_osx_version 10.9
enable_and_lock_vmx true
# search locations
scanfor internal,external,biosexternal,optical,manual
dont_scan_volumes "RECOVERY","FAT VOLUME","Windows"
#dont_scan_dirs +,EFI:/EFI/Boot,EFI:/EFI/GRUB,C12A7328-F81F-11D2-BA4B-00A0C93EC93B:/EFI/Microsoft
dont_scan_dirs +,EFI:/EFI/Boot,EFI:/EFI/GRUB
menuentry "Windows 10" {
icon \EFI\refind\myicons\os_win_old.png
loader \EFI\Microsoft\Boot\bootmgfw.efi
disabled
}
これらは私の物理パーティションです:
A1398% diskutil list
/dev/disk0 (internal, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *251.0 GB disk0
1: EFI EFI 209.7 MB disk0s1
2: Microsoft Reserved 16.8 MB disk0s2
3: Microsoft Basic Data Windows 68.2 GB disk0s3
4: Windows Recovery 1.1 GB disk0s4
5: Microsoft Basic Data Data 107.4 GB disk0s5
6: Linux Filesystem 12.9 GB disk0s6
7: Apple_APFS Container disk1 53.7 GB disk0s7
/dev/disk2 (external, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *250.1 GB disk2
1: EFI ESP 209.7 MB disk2s1
2: Apple_HFS SamsungHFS 76.3 GB disk2s2
3: Apple_APFS Container disk3 50.0 GB disk2s3
4: Microsoft Basic Data SamsungNTFS 85.2 GB disk2s4
5: Microsoft Basic Data exFAT 26.8 GB disk2s5
6: Linux Filesystem 10.7 GB disk2s6
2つのディスクがあり、ESP
はEFIパーティションの1つのボリューム名です。ボリューム名は重要ではありません。違いを思い出せるように、内部の名前をEFI
、外部の名前をESP
と名付けました。
ESPとEFIボリュームの両方にディレクトリEFI/Microsoft/Boot
が含まれ、両方にMicrosoftブートローダーbootmgrfw.efiと同じディレクトリ内のBCDファイル。
rEFIndは、選択されたbootmgrfw.efiを呼び出します。これはNTFSを表示でき(したがって、rEFInd NTFSドライバーは必要ありません)、その中のBCDファイルを調べます。実行するWindowsブートローダーを定義する独自のディレクトリ。
Windows BCDの各インスタンスには(独自の)エントリが1つしかないため、rEFIndで関連するアイコンを選択すると、Windowsブートローダーが何も要求せずに個別のWindowsインスタンスを直接起動します。
これは、Windowsのmsconfig
のブートタブで設定します。ここで、Windowsの各インスタンスでは、1つのブートエントリのみを定義します。
EFI/Microsoft/Boot
全体をEFI/Boot
にコピーするか、同じディスク上に2番目のEFIパーティションを作成することで、1つのEFIパーティションだけでこの動作を複製できる場合がありますが、必要なだけなのでこれを試していません。外付けドライブが接続されているときに使用できる2番目のWindowsインスタンス。