2.6内核的 initrd.gz 解压后多是一个 cpio 格式的文件
可用 cpio 命令取档:
cp */initrd.gz .
gunzip initrd.gz
mkdir tmp
cd tmp
cpio -iF ../initrd.gz
修改后,再把它做成 cpio 格式的包。
网上讲是用
find . | cpio -c -o | gzip -9 > ../initrd.gz
经试多次都不能启动,查看 /usr/sbin/mkinitramfs
得知应这样才做
find . | cpio -L -o -H newc | gzip -9 > ../initrd.gz
-L 解除符号连接的关联
-H newc 是采用新型 (SVR4) 跨平台格式, 支持大于 65536 i节点 的 文件系统,不能启动主要是这个,因为缺省格式是老式的"bin"
经试,能成功启动,这样修改 initrd.gz 文件,比 mkinitramfs 形象、方便的多。
寂寞男孩 于 2007-05-25 21:54:39发表:
:0)1