Después de haber usado Xen y su contenido pygrub
durante un tiempo, ahora estoy tratando de hacer algo similar con KVM / qemu.
Básicamente, tengo un volumen lógico LVM (aunque también podría ser un archivo) que contiene el sistema de archivos raíz de una distribución de Linux (sin particiones, solo FS directamente en el disco) que también contiene un /boot/grub/grub.cfg, y me gustaría poder arrancar eso.
Tenía la impresión de que el paquete grub-firmware-qemu en Debian / Ubuntu estaba destinado a eso, pero no he logrado que funcione. AFAICT, la imagen grub.bin contiene un disco duro con un archivo grub.cfg con algunas opciones de menú (como buscar un multiboot.img o buscar un grub.cfg), pero todo lo que obtengo cuando se ejecuta kvm -bios grub.bin
es una "licencia incompatible " mensaje de error. Y no estoy muy seguro de cómo generar un diferente grub.bin
con un grub.cfg diferente (uno que solo funcionaría configfile (hd0)/boot/grub/grub.cfg
).
Por supuesto, podría crear una imagen de disquete o cdrom o disco con una configuración mínima de grub que haga exactamente eso, pero tengo la sensación de que debería haber una forma más limpia / canónica de hacerlo y mi investigación ha recuperado muy poco. lejos.
Supongo que también se podría usar la -kernel
opción qemu , pero de nuevo, no sé cómo generar un grub.img
para eso. (el uso de un grub.img generado con grub-mkimage -O i386-pc -o grub.img -c =(echo 'configfile (hd0)/boot/grub/grub.cfg') /usr/lib/grub/i386-pc/*.mod
trae de nuevo el mismo mensaje de error de "licencia incompatible").
Eso está en Debian con la versión 1.99-23 de los paquetes grub y 1.1.2 + dfsg-2 de kvm / qemu.
En resumen, ¿cómo debo crear un grub.bin (para usar kvm -bios
) o un grub.img (para usar kvm -kernel
) para que kvm arranque una imagen grub que pueda analizar / boot / grub /grub.cfg en el disco virtual?