Есть загрузочные диски: disk1.qcow2 и disk2.qcow2. Первый диск:
kirl@debn:~/start_qemu$ sudo fdisk -l /dev/nbd0
Disk /dev/nbd0: 4 GiB, 4294967296 bytes, 8388608 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x503e2391
Device Boot Start End Sectors Size Id Type
/dev/nbd0p1 * 2048 395263 393216 192M 83 Linux
/dev/nbd0p2 395264 8388607 7993344 3.8G 83 Linux
Внутри раздела nbd0p1 первого диска находятся файлы bzImage, initramfs, папка grub и еще немного файлов.
Второй диск:
kirl@debn:~/start_qemu$ sudo qemu-nbd --connect /dev/nbd0 disk2.qcow2
kirl@debn:~/start_qemu$ sudo fdisk -l /dev/nbd0
Disk /dev/nbd0: 80 GiB, 85899345920 bytes, 167772160 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Device Start End Sectors Size Type
/dev/nbd0p1 2048 5322751 5320704 2.5G Linux filesystem
/dev/nbd0p2 5322752 167772126 162449375 77.5G Linux filesystem
kirl@debn:~/start_qemu$
Внутри раздела nbd0p1 второго диска находятся папки: boot, etc, opt, var. Внутри boot находятся bzImage, initramfs, grub и другие.
Как я могу запустить эту машину в режиме EFI в QEMU. Щас команда примерно выглядит так. Я напрямую передаю QEMU ядро и initramfs:
#!/bin/bash
qemu-system-x86_64 \
-m 2G \
-machine q35 \
-smp 2 \
-drive if=pflash,format=raw,readonly=on,file=/usr/share/OVMF/OVMF_CODE.fd \
-drive if=pflash,format=raw,file=/usr/share/OVMF/OVMF_VARS.fd \
-device qemu-xhci \
-drive file=/home/kirl/start_qemu/usb.raw,format=raw,if=none,id=usbdisk \
-device usb-storage,drive=usbdisk \
-kernel ./kernel \
-initrd ./initramfs \
-serial mon:stdio \
-nographic \
-drive file=disk1.qcow2,if=virtio,format=qcow2 \
-drive file=disk2.qcow2,if=virtio,format=qcow2 \
-append "root=/dev/vda2 ro console=ttyS0" \






