ubuntu中挂载androidROM中的衡痕贤伎system.img镜像失败,错误提示:mount:wrongfstype,bad泠贾高框option,badsuperblockon/dev/loop0,missingcodepageorhelperprogram,orothererrorInsomecasesusefulinfoisfoundinsyslog-trydmesg|tailorso.
工具/原料
ubuntulinux
安卓系统镜像system.img
android-tools-fsutils
simg2img
方法/步骤
1、先来分析一下原因:system.img有两种常见的格式:raw和sparse。raw:即rawext4image,也就是经常说的rawimage,用file命令可以查看他的特点,如图所示。raw是完整的ext4分区镜像(包含很多全零的无效填充区),可以直接使用mount挂载:sudomount-oloopsystem.img/mnt
2、sparse:是sparseext4坡纠课柩image,也就是常说的simg,用file命令可以查看他的属性,如图所示撅掏浑锌。看见了吗?system_sparse.img:Androidsparseimage,它是进行了稀疏描述的rawext4文件,它尺寸比较小,因为它去掉了全零的无效填充数据,但是,这样造成我们不能直接使用mount挂载,需要转换成raw再挂载,下面我们来介绍如何转换。
3、安卓本身提供了raw和sparse之间的转换工具simg2img和img2simg,而且ubuntu将这个工具打包成了一个叫做android-tools-fsutils的软件包,我们只需要安装上这个工具就可以使用simg2img这个工具了,linux就是方便,要是在windows上,光是安装这个工具就得费点时间。sudoaptinstallandroid-tools-fsutils
4、工具安装好了之后就可转换了,只需要一条简单的命令:simg2imgsystem_sparse.imgsystem_raw.imgsimg2img后不带参数,是simg2img的使用方法,如图:
5、现在我们得到了可以挂载的rawimage,我们再挂载试试:sudomount-oloopsystem_raw.img/mnt成功,没有报错,ls/mnt/可以看到system.img的内容了