2.6内核中的initrd.img采用cpio压缩,不再是2.4内核使用的ext2格式,无法使用mount -o loop 挂载。需要使用gunzip解压缩,然后再使用cpio解包
cp /boot/initrd-***.img initrd.img.gz
gunzip initrd.img.gz
mkdir initrd
mv initrd.img initrd
cd initrd
mount -o loop /initrd.img /mnt (2.4的内核可采用mount挂载)
cpio -ivmd < initrd.img
通过以上命令就将initrd.img解压了,现在将编译好的硬件驱动放到相应的存放位置,完成后使用以下命令重新压制
find . | cpio -ov > ../initrd.new.img
gzip ../initrd.new.img
再将其改名拷贝至/boot目录,重启就可以观察修改后的效果