¿Cuál es la diferencia entre initrd e initramfs?

12

Me gustaría saber, ¿cuál es la diferencia entre initrdy initramfs?

Sen
fuente

Respuestas:

12

Initrd está en desuso, reemplazado por Initramfs, que no tiene algunas de las debilidades de initrd:

  • Initrd requiere que se compile al menos un controlador del sistema de archivos en el núcleo
  • Un disco creado por Initrd debe tener un tamaño fijo
  • Todas las lecturas / escrituras en Initrd se almacenan de forma redundante (innecesariamente) en la memoria principal

Creo que eso es todo.


¿Cómo genera este comando update-initramfs /boot/initrd.img?

Convierte los archivos necesarios en un cpio archivo , que es un formato de archivo binario (muy similar a tar, no se usa mucho en Linux) y luego usa gzip para comprimir ese archivo. Gzip no es un archivo itsef, solo una compresión (por eso obtienes archivos .tar.gz).

En el momento del arranque, el archivo está descomprimido y descomprimido en un    disco RAM .

Ver también: Cómo se inicia una computadora

Stefano Palazzo
fuente
"Initrd requiere que se compile al menos un controlador del sistema de archivos en el kernel" ... No tengo mucha idea sobre esto. ¿¿Por favor Podría explicar esto??
Sen
Normalmente, los controladores del sistema de archivos se pueden atornillar al sistema operativo a voluntad, para algunas cosas deben compilarse directamente en el núcleo. Lo cual es una molestia, ya que todas las versiones del kernel deben personalizarse, hacerse más grandes, introducir dependencias adicionales, etc. (Al menos eso es lo que creo que es el caso, bien podría estar equivocado, no tengo un gran conocimiento sobre los sistemas de archivos específicamente)
Stefano Palazzo
¿Es como si initramfs no necesitara ser montado inicialmente?
Sen
Todos los sistemas de archivos deben montarse antes de poder usarse. Si desea aprender sobre initramfs en profundidad, eche un vistazo a en.wikipedia.org/wiki/Initrd : hay una explicación mucho más detallada.
Stefano Palazzo
¿Cómo genera este comando update-initramfs /boot/initrd.img?
Sen
3
  • initrd estaba basado en un dispositivo de bloque, initramfs es la base de archivos.

  • con initrd, creó una imagen del sistema de archivos. Con initramfs, crea un archivo con los archivos que el núcleo extrae en un tmpfs.

karthick87
fuente
¿podría explicarme los pasos desde el principio hasta la carga y lectura de initramfs?
Sen