一般的 initrd文件用下面命令就可以解开了

$zcat initrd |cpio -div

但是有些不行,是2个合起来的,可以用下面这个脚本来解
http://blog.druggo.org/public/script/unpack

当你做完修改以后,可以用下面命令来重建

# cd irfs-dir
# find . -print | cpio -o -H newc > ../initramfs
# cd ..
(if you want)
# gzip initramfs

还有一个perl的脚本,虽然有报错,但是还是可以用的
http://blog.druggo.org/public/script/unigz

from:  http://forums.gentoo.org/viewtopic-t-429263.html
          http://forums.gentoo.org/viewtopic-t-383198.html