Al iniciar "Linux desde cero" no aparece el mensaje #

Al iniciar "Linux desde cero" no aparece el mensaje #

he estado siguiendoUn sistema Linux mínimo desde ceropara construir un Linux que ocupe poco espacio (10 MB o menos).

Estoy bastante seguro de que no hubo errores hasta el último punto, donde estoy probando la imagen, usando el comandoqemu-system-i386 -L . -hda minux.img

En lugar de iniciar el #mensaje como muestra el tutorial, aparece el mensaje de rescate de Grub. Para intentar arrancar, utilicé kernel /boot/kernel_namethen boot, que finalmente falla con: Salida de grub 2

El mío grub.confestá a continuación, idéntico al del tutorial:

default 0
timeout 30
title Minux
root (hd0,0)
kernel /boot/vmlinux-2.6.21-1 root=/dev/hda1 rw

Hasta ahora, la única diferencia que logré encontrar fue en fdisk, donde mi sector inicial es 2048, ya que es el mínimo que puedo configurar usando fdisk y, como consecuencia, el desplazamiento es mayor. Otra diferencia es que estoy usando grub x86_64-pc y algunas de mis bibliotecas de Busybox tienen nombres diferentes, pero esto no debería interferir con el arranque.

¿Cómo podría arreglar el procedimiento para que mi Linux funcione? ¿O existe una mejor manera de crear una distribución de Linux de menos de 10 MB?

Respuesta1

Permítanme intentar responder la segunda pregunta sobre cómo crear un sistema pequeño. Dado que estamos construyendo sobre x86, supongo que lo que se pretende es crear un sistema que arranque desde una unidad flash, en lugar de grabarlo en chips integrados, lo cual es una historia muy diferente.

Considere eliminar imágenes de disco y usar cpio initramfs. luego arranca así.

qemu-system-i386 -kernel vmlinuz -initrd root.cpio.gz

Me encanta esto porque tenemos más flexibilidad y no debemos confundirnos con las ubicaciones de los discos.

yo también sugierogrub4dosel gestor de arranque. A pesar de "dos" en el nombre, se puede instalar desde Linux y arrancar kernels de Linux. la instalación es tan simple como escribir un mbr y copiar un archivo de 213k acualquier partición. y grub4dos reconoce muchos sistemas de archivos.


Además, en tu configuración parece que no configuraste correctamente grub, ya que hay unrescateLa consola mostró. aunque deberías escribir kernel /boot/kernel_namecon "root=" antes boot.

y en mi máquina el kernel invitado qemu reconoce la imagen del disco como "/dev/sda" en lugar de "/dev/hda".

información relacionada