Extract and repack initrd.img

$ file /boot/initrd.img-2.6.31-22-generic
/boot/initrd.img-2.6.31-22-generic: gzip compressed data, from Unix, last modified: Tue Aug 24 15:48:34 2010, max compression

说明initrd.img-2.6.31-22-generic是gzip包。

Extract方法如下:
$ gzip -dc initrd.img-2.6.31-22-generic | cpio -idv

可以修改initrd的内容然后repact,比如在打开/init,加入echo "Test modification initrd",然后Repact如下:
$ find . | cpio -H newc -o | gzip -9 > ../initrd.img-2.6.31-22-generic
然后把该文件拷贝到/boot路径下,测试OK!

注意: cpio的格式需要参考使用的内核文档,Documentation/initrd.txt,比如我的内核是2.6.31-22,相应文档指明 -H newc。如果使用不对的格式,可能导致启动不成功,因为initrd.img不能被识别。

你可能感兴趣的:(职场,休闲,initrd)