Fedora 39 新提案:使用 mkosi-initrd 替代 Dracut,加速本地構建 initrds
5 月 9 日消息,Fedora 39 發行版目前正處于開發階段,最新提案建議使用 systemd 的 mkosi-initrd 來替代 Dracut,從而加速本地構建 initrds。
IT之家翻譯功能提案部分內容如下:
mkosi-initrd 是 initrds 的替代構建器,通過整合到 Fedora 發行版本中,幫助用戶在本地構建 initrds。
通過 mkosi-initrd 安裝內核包的時候,可以提供一個內核安裝插件來構建 initrd。
其延伸目標是讓 initrds 在 koji 中構建,并通過 rpm 包交互;而后續目標是預構建的 initrds,通過 rpm 包交付直接嵌入到統一內核鏡像中。
我們創建 initrd 的過程既復雜又低效。Initrds 包含重復的功能,需要大量的維護者工作。該提案的目的是引入一個大大簡化的初始化創建和簡化的初始化內容的機制。
mkosi-initrd 項目是一組 mkosi 的配置文件。MKOSI 是一個從系統包構建操作系統鏡像的程序。initrd 是通過使用 mkosi-initrd 提供的配置調用 mkosi 來構建的。
不是通過抓取文件系統并再次找出依賴項來構建 initrd,而是使用現有軟件包和通過 dnf / rpm 進行的正常軟件包安裝來填充 initrd。這也意味著包管理器負責滿足依賴項。在運行時,systemd 負責設置執行環境和調用程序。
目前,以這種方式構建的 initrd 比 dracut 構建的 initrd 大。它們的功能也有限:許多常見類型的系統工作得很好,但不支持一些特殊的配置。
此更改的目標是提供替代機制。如果反饋是肯定的,我們可能會考慮在某些情況下使用使用 mkosi-initrd 構建的 initrds 作為默認值。
在可預見的未來,沒有計劃移除 dracut。這意味著對于任何不受支持或效果不佳的情況,dracut 仍然是自然的后備。