|
发表于 2009-10-15 15:58:05
|
显示全部楼层
汗,我自己單幹呢。
dracut比mkinitcpio複雜很多,但是大體上是一樣的,都是提供一系列函數,然後將各個功能分成模塊,最後在每個模塊里實現。具體的工作就是檢查和安裝預編譯的二進制文件。
要說dracut怎麼好,我還說不出太多,但是它的跨發行版應該是最好的。我在mkinitcpio的移植中就栽了個大跟頭——應為Arch官方不支持multilib,而Gentoo是支持的,所以某些Arch的目錄,到Gentoo下就是符號鏈接(如/lib)。mkinitcpio顯然就沒考慮這麼多,所以剛開始全亂了,一個文件複製了好幾份。後來總算解決了這個問題,雖然還不完美。當然,dracut還存在一些細節性問題,例如啟動後/dev/pts目錄會掛載錯誤。
至於genkernel:它把生成initramfs的每個步驟給分開(分成不同的腳本),那麼多功能都在一個個腳本里糾纏起來,因此雜亂不堪。 |
|