前一篇文章说了系统中的多数映像都可以使用类似 ramdisk.img的解压方法,但是system.img 那样解压相对麻烦写,这里采取mount的方法,是比较简介的解压方式。
1)这里会用到一个文件 simg2img ,在编译好的android项目里,这个可执行文件放在目录:out/host/linux-x86/bin 中,把simg2img 复制到跟system.img 同级的目录。
执行下面的命令可以查询simg2img的用法
linjw@linjw:~/systemImg$ ./simg2img --h
Usage: simg2img <sparse_image_files> <raw_image_file>
2) 对 system.img 执行:
linjw@linjw:~/systemImg$ ./simg2img system.img system.img.step1
3) 把上一步得到的文件system.img.step1 挂在到目录 system-extracted 中
linjw@linjw:~/systemImg$ mkdir system_extracted
linjw@linjw:~/systemImg$ sudo mount -o loop system.img.step1 system_extracted/
最终就可以在system-extracted看到结果了。