Una de las propuestas de cambio recientes para Fedora 39 en desarrollo es enviar mkosi-initrd de systemd como una alternativa moderna y superior a Dracut para construir initrds.

Inicialmente, mkosi-initrd está configurado para ser tratado como un constructor alternativo a Dracot para construir initrds, pero su alcance inicial puede ser limitado. La intención con mkosi-initrd es limpiar el proceso de compilación complicado e ineficiente que actualmente utiliza Dracut. La propuesta de función explica:

mkosi-initrd es un constructor alternativo para initrds. Se empaquetará en Fedora, para que los usuarios puedan usarlo para construir initrds localmente. Se proporcionará un complemento de instalación del kernel para compilar el initrd cuando se instale un paquete del kernel. Como meta amplia, los initrds se construirán en koji y se entregarán a través de paquetes rpm. Como un objetivo adicional, se utilizarán initrds prediseñados en imágenes de kernel unificadas que se pueden entregar a través de paquetes rpm.

El proceso mediante el cual creamos initrds es complicado e ineficiente. Los initrds contienen funcionalidad duplicada y requieren mucho esfuerzo de mantenimiento. El objetivo de esta propuesta es introducir un mecanismo muy simplificado de creación de initrd y contenidos de initrd simplificados.

El proyecto mkosi-initrd es un conjunto de archivos de configuración para mkosi. mkosi es un programa para crear imágenes del sistema operativo a partir de paquetes del sistema. Un initrd se crea invocando mkosi con la configuración proporcionada por mkosi-initrd.

En lugar de crear initrds raspando el sistema de archivos y determinando las dependencias nuevamente, se usan los paquetes existentes y la instalación normal de paquetes a través de dnf/rpm para completar el initrd. Esto también significa que el administrador de paquetes es responsable de satisfacer las dependencias. En tiempo de ejecución, systemd es responsable de configurar el entorno de ejecución e invocar programas.

Actualmente, los initrds construidos de esta manera son más grandes que los initrds construidos por dracut. También tienen una funcionalidad limitada: muchos tipos comunes de sistemas funcionan bien, pero no se admiten configuraciones más exóticas.

El objetivo de este cambio es proporcionar un mecanismo alternativo. Si los comentarios son positivos, podemos considerar usar initrds creados con mkosi-initrd como predeterminados en ciertos escenarios. No hay planes para eliminar dracut en un futuro previsible. Esto significa que para cualquier caso que no sea compatible o que no funcione bien, dracut sigue siendo una alternativa natural. De esta forma, este cambio es similar a Changes/Unified_Kernel_Support_Phase_1, ya que proporciona una vista previa de una nueva tecnología como alternativa al enfoque actual establecido.

Más detalles sobre este cambio propuesto para Fedora 39 en el otoño se puede encontrar a través de the Fedora Project Wiki.
mkosi-initrd está alojado en el proyecto systemd y se puede encontrar en GitHub.

Categories: IT Info