镜像文件提取System.img解/打包工具及常用命令
2014/4/6
·
本文基于linux环境,Android中的system.img映像有两种不同的文件系统,分别是yaffs2和data EXT。
在进行内容提取及.img解包打包之前需要先确定文件系统,具体判断命名:file ./system.img
输出:./system.img: VMS Alpha executable 即为 yaffs2 文件系统
输出:data 即为 EXT 文件系统
yaffs2
unyaffs Downloads:code.google.com/p/unyaffs/downloads/list
解包 … unyaffs system.img
打包 … mkyaffs2image system system.new.img 编译
data EXT ext4
EXT4_utils Downloads:gitorious.org/0xdroid/system_extras/source/
9c842adc177c1bcd22c2038d8d237bfb70654dca:ext4_utils
反编译为ext4 … simg2img system.img system.ext4.img
编译映像 … mkuserimg.sh -s system system.new.img ext4 system 1024M
ext4_utils反编译后依然是映像文件,而并未直接解包,此时需要使用mount命令以类似虚拟光驱的方式打开system.ext4.img文件
Android system.img Linux 常用命令
simg2img system.img system.ext4.img
mkdir system 新建挂载文件夹
mount -o loop system.ext4.img system 挂载
…cp *.apk system/app/ 增加APP
…cp *.so system/lib/ 增加APP的.so文件
cp -Rf 原路径/* 目的路径/ 拷贝指定目录下的所有文件
…rm -r system/app/*.apk 删除apk 注意有lib*.so
chmod 777 * 文件权限
chmod -R 644 app/* 所有文件
权限标记:r=4 w=2 x=1 -rwxr–r– 111 100 100 744
df -m * 查看挂载点大小并以M显示
mv system_new.img system_yes.img 更名
umount system 解除挂载
解压:tar xvfz *.tar.gz
压缩:tar czf *.tar.gz *