insmod normal
insmod btrfs
insmod part_gpt
set root=(hd0,2)
menuentry 'Ubuntu' {
linux /boot/vmlinuz root=/dev/sda2 ro
initrd /boot/core.gz
boot
}
안녕하세요. EFI 부팅 설정을 수동으로 수행하는 방법을 배우고 있습니다!
나는 좋은 진전을 이루었고 EFI 파티션을 만든 다음 create bootloader를 사용하여 grub-mkimage
EFI/BOOT에 넣은 다음 grub.cfg
TinyCore에서 커널과 램디스크를 다운로드하고 이 두 파일을 (hd0,2)
.
이제 로드할 수 있고 로드할 수 있는 곳 qemu
으로 이동할 수 있습니다. 파일을 로드하는 것처럼 보이며 파일을 볼 수도 있습니다. 하지만 내가 필요한 것은 입력 하고 커널 로드를 확인하는 것 뿐이고 아무 일도 일어나지 않는 것 같습니다 . 입력만 하면 작동이 멈추고 내가 할 수 있는 것은 재부팅뿐입니다.Grub
linux /vmlinuz
ls
boot
boot
이 단계에서 성공적으로 부팅하지 못할 수도 있다는 것을 알고 있지만 적어도 부팅 시 IRQ 설정, 감지된 장치 등에 대한 일부 메시지가 커널로부터 수신될 것으로 예상합니다.
나의 다음 단계는 무엇입니까?
Qemu 명령줄:
qemu-system-x86_64 -display sdl -vga std -accel kvm -m 8000 \
-drive format=raw,file=/dev/sda -bios /mnt/boot.flash -smp 2
답변1
/mnt/boot.flash
당신의 파일은 무엇입니까?
UEFI를 부팅할 때 또는 같은 형식이어야 하며 /usr/share/ovmf/OVMF.fd
호스트 시스템에서 이미 사용 가능하거나 이름이 유사한 패키지에 설치되어 있을 수 있습니다 /usr/share/qemu/OVMF.fd
.ovmf
바라보다:https://www.ubuntubuzz.com/2021/04/how-to-boot-uefi-on-qemu.html
가상 머신에서 UEFI NVRAM 부팅 변수를 유지하려면 다음 옵션을 사용할 수도 있습니다 -pflash
.
qemu-system-x86_64 -display sdl -vga std -accel kvm -m 8000 \
-drive format=raw,file=/dev/sda -bios /usr/share/ovmf/OVMF.fd \
-pflash /some/writeable/location/OVMF_VARS.fd -smp 2
운이 좋으면 패키지 OVMF_VARS.fd
가 설치한 파일에 샘플 파일이 포함되어 있을 수도 있지만 ovmf
그렇지 않은 경우 UEFI 펌웨어가 자동으로 초기화할 수 있다는 가정 하에 약 528K 정도의 빈 파일을 만들어 사용해 볼 수 있습니다. 올바르게 초기화되지 않은 경우 변수 저장소입니다.
바라보다:https://joonas.fi/2021/02/uefi-pc-boot-process-and-uefi-with-qemu/