GPT 모드의 Windows 10으로 파티션된 디스크가 있는데 불행하게도 거기에 Windows 10 설치가 생성되었습니다.
/dev/sda1 2048 206847 204800 100M EFI System
/dev/sda2 206848 239615 32768 16M Microsoft reserved
/dev/sda3 239616 1240977398 1240737783 591.6G Microsoft basic data
/dev/sda4 1240977408 1242068991 1091584 533M Windows recovery environment
sda
├─sda1 vfat FAT32 AC47-5B68
├─sda2
├─sda3 ntfs 343642ED3642AFA2
└─sda4 ntfs E2C4D5BFC4D5965F
그런 다음 일반 grub을 사용하여 MBR에 Linux가 설치된 별도의 CD가 있습니다.
Windows가 BIOS의 첫 번째 부팅 장치인 경우 Windows는 정상적으로 시작됩니다. Linux CD가 BIOS의 부팅 장치인 경우 Grub은 정상적으로 부팅할 수 있습니다. grub에서 Windows를 부팅하는 방법은 무엇입니까?
os-prober
grub.cfg
다음을 생성합니다 grub-mkconfig
.
menuentry 'Windows 10 (on /dev/sda1)' --class windows --class os $menuentry_id_option 'osprober-chain-AC47-5B68' {
insmod part_gpt
insmod fat
set root='hd0,gpt1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1 AC47-5B68
else
search --no-floppy --fs-uuid --set=root AC47-5B68
fi
drivemap -s (hd0) ${root}
chainloader +1
}
그러나 이것은 작동하지 않습니다. Windows를 부팅하는 대신 시스템이 재부팅되고 BIOS POST 화면이 표시된 후 grub을 다시 입력했습니다. 참고: grub에서 /dev/sda1은 (hd1,gpt1)로 표시되지만 검색 시 이를 찾아야 하므로 아무 영향도 주지 않습니다.
MBR의 경우 EFI/GPT의 경우 다음과 같아야 합니다. menuentry 'Windows Boot Manager' --class windows --class os $menuentry_id_option 'osprober-efi-ABCD-EFGH' { insmod part_gpt insmod fat search --no-floppy -- fs - uuid --set=root ABCD-EFGH 체인로더 /EFI/Microsoft/Boot/bootmgfw.efi } – Artem S. Tashkinov
다음을 시도해 보세요:
menuentry 'Windows Boot Manager' --class windows --class os $menuentry_id_option 'osprober-efi-ABCD-EFGH' {
insmod part_gpt
insmod fat
search --no-floppy --fs-uuid --set=root AC47-5B68
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
결과 화면은 다음과 같이 표시됩니다.
Booting a command list
Invalid signature
Press any key to continue