ramdisk.img文件
gunzip工具
cpio工具
gzip工具
1.解包ramdisk.img
由于ramdisk.img是gzip格式文件,故而进行如下操作:
a.将目标文件复制出来并重命令为gz后缀的文件:
mv out/target/product/generic/ramdisk.img ./ramdisk.img.gz
b.使用gunzip命令对复制出来的文件进行解压:
gunzip ./ramdisk.img.gz
2.还原ramdisk.img
a.创建ramdisk目录:
mkdir ramdisk
b.切换当前目录到新创建的ramdisk目录:
cd ramdisk
c.使用cpio命令将ramdisk.img.gz解压后的ramdisk.img进行拆包,将其文件全部解压出来放到当前目录:
cpio -i -F ../ramdisk.img
3.修改需要的文件,如*.rc
如果我们要修改ramdisk.img里的init.rc文件,那么我们修改后重新保存起来即可。
4.重新打包ramdisk.img
a.删除解压的中间文件ramdisk.img:
rm -f ../ramdisk.img
b.将修改后的目录全部文件使用cpio命令重新打包成ramdisk.img.unzip文件:
find . | cpio -o -H newc > ../ramdisk.img.unzip
c.回到上级目录:
cd ..
d.将打包的文件进行压缩:
gzip -c ./ramdisk.img.unzip > ./ramdisk.img.gz
e.删除打包后的中间文件:
rm -f ./ramdisk.img.unzip
f.删除拆包后的目录:
rm -R ./ramdisk
g.将重新打包压缩后的文件复制到目录位置:
mv ./ramdisk.img.gz out/target/product/generic/ramdisk.img
至此,一个ramdisk镜像文件的解包(拆包)和重新打包的全过程就处理完成了,Android的根文件系统就这么容易玩弄了。END