加载中…
个人资料
蜗牛_1215
蜗牛_1215
  • 博客等级:
  • 博客积分:0
  • 博客访问:33,007
  • 关注人气:3
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
谁看过这篇博文
加载中…
正文 字体大小:

解打包.img.ext4(转)

(2013-08-22 14:22:34)

有的官方包用的是.img.ext4格式,要用Linux解包

以下用Ubuntu做例子讲解打包解包方法

也可以用相同的原理修改EXT4文件系统的.img

 

1.需要:

Ubuntu操作系统

http://www.ubuntu.org.cn/download/desktop

 

解打包工具 - by xiao1u

http://pan.baidu.com/share/link?shareid=237468&uk=2735187226

 

2.准备工作:

解压解打包工具,得到三个文件:make_ext4fs、mkuserimg.sh、simg2img,

把它们跟要修改的 .img.ext4(或.img)文件放置到一个方便的目录下

 

3.修改:

打开终端,输入su ,并按照提示输入su密码,随后cd到放置工具和源文件的目录


3.1.转换源文件为img格式( .img则略过)

使用./simg2img src des命令来转换system.img.ext4格式文件

终端输入:

./simg2img system.img.ext4 system.img

等待一会就可以转换完毕

 

3.2.挂载镜像

新建一个目录,挂载此img到这个目录上使用

终端输入:

sudo mkdir sysmain

新建出一个名为sysmain的目录

继续输入:

mount -o loop system.img sysmain

挂载成功后就可以在资源管理器中管理该img内的文件

 

3.3.修改镜像内容

此时可以进入挂载的目录里查看修改文件

要注意保持文件的原始权限,如果不慎搞错权限有可能导致刷入此镜像后开不了机

发现权限错误又不知道原权限时可以直接改成777然后用户为root

一般来说可以参考同目录下的其他文件

 

比如要将framework-res.apk文件放到framework目录下

终端输入:

sudo cp framework-res.apk sysmain/framework

sudo chown root.2000 sysmain/framework/framework-res.apk

sudo chmod 0644 sysmain/framework/framework-res.apk

其他文件依此类推 一般建议使用终端命令来移动、复制文件

 

3.4.重新打包

完成修改后就要打包,此时用到另外一个命令

首先在看看镜像挂载到目录后镜像分区的大小,例如是 768M

终端输入

chmod 777 ./mkuserimg.sh

./mkuserimg.sh -s sysmain systest.img.ext4 ext4 tmp 768M

随后就重新打包好了

#注意

下划线部分必须对应,如果是非M单位要转换成M

 

如果是打包成.img

终端输入

chmod 777 ./make_ext4fs

./make_ext4fs -l 768M -s -a system system.img ./sysmain

#注意:

此处下划线部分是分区大小

"-a system",是指这个img用于Android,挂载点是/system

使用此参数后会自动根据private/android_filesystem_config.h里定义的权限给镜像中所有文件重新设置权限

如果刷机后发现有文件权限不对,可以修改android_filesystem_config.h添加权限重新编译make_ext4fs

也可以直接不使用 “-a system”参数,保持镜像中文件的默认权限。

0

阅读 评论 收藏 转载 喜欢 打印举报/Report
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有