estoy siguiendoesteGuía para hacer un gestor de arranque sencillo. Genera un archivo disk.img
.
$ dd if=/dev/zero of=disk.img bs=1024 count=1440
$ dd if=vbr.bin of=disk.img count=512 conv=notrunc
$ file disk.img
disk.img: DOS/MBR boot sector
Funcionando qemu-system-i386
y qemu-system-x86_64
arrancando disk.img
bien, muestra el texto deseado.
Quiero poder arrancar miactualPC en este "sistema operativo". Pensé que podría simplemente ejecutar:
$ dd if=disk.img of=/dev/sdc1
...y reinicie mi PC, seleccionando Boot from USB
en el BIOS, pero aparece este error:
Invalid partition table!
Sin embargo, funciona qemu-system-i386 /dev/sdc
y qemu-system-x86_64 /dev/sdc
funciona bien.
¿Cómo escribo disk.img
en mi memoria USB para que arranque desde mi BIOS real?
Respuesta1
Por alguna razón, los pasos que tomé para crearlo disk.img
hacen que disk.img
solo se pueda escribir correctamente en un disquete. Sin embargo, eliminar el archivo de imagen por completo (escribir directamente en el USB) funcionó (asegúrate de utilizar /dev/sdX
en lugar de /dev/sdXY
):
$ dd if=/dev/zero of=/dev/sdc bs=1024 count=1440
$ dd if=vbr.bin of=/dev/sdc count=512 conv=notrunc