Pregunta:
¿Es posible arrancar Linux sin un initrd.img? Estoy planeando agregar controladores predeterminados como parte del propio kernel y evitar initrd por completo.
¿Cuáles son los módulos que deberían ser parte del kernel en lugar de módulos cargables?
Respuesta:
Lo es, a menos que su volumen raíz esté en un LVM, en una partición dmcrypt, o requiera que se ejecuten comandos antes de poder acceder a él.
No he usado un initrd en mi servidor en años. Necesita como mínimo estos módulos integrados:
- los controladores de cualquier controlador donde viva su disco de volumen raíz
- los controladores necesarios para "llegar" a eso, como PCI, compatibilidad con PCIe, compatibilidad con USB, etc.
-
los módulos que ejecutan el sistema de archivos montado en él
También es una muy buena idea incorporar los controladores de su tarjeta de red.
Descubrí que
lspci
/lsmod
puede ayudarlo aquí desde su kernel actualmente en ejecución, mire lo que hay allí y use la opción de búsqueda make menuconfig antes de compilar para encontrar dónde habilitar los módulos.