有的官方包用的是.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”参数,保持镜像中文件的默认权限。

linux ext4 img解包打包教程,解打包.img.ext4(转)相关推荐

  1. 如何解包/编辑/打包boot.img文件

    感谢本文的作者:Alansj, DarkriftX, RyeBrye, Will, Try OP9, Tonyb486, Timmmm, Lxrose还有好多不知名的作者们在wiki上的不懈努力. 来 ...

  2. linux下解压war包或指定解压目录

    linux下解压war包或指定解压目录 找到war包 找到war包 使用 jar -xvf word.war 命令 ,可直接对war包进行解压处理,并解压至当前目录: 如何将war包解压至指定的目录, ...

  3. python解包什么意思_python解包用法详解

    对于一堆资料,我们可以把它分给不同的人使用,这个分散的过程,我们可以看成是解包方法是实现.当然实际python解包的使用会相对复杂一点,我们会对常见的列表.函数等进行操作.下面我们就Python解包的 ...

  4. python序列解包_python中解包

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 序列解包(sequence unpacking)是python中非常重要和常用的 ...

  5. linux ext4 img解包打包教程,安卓解包、修改、打包system.img/system.img.ext4教程

    自从得知ROM助手可以解包IMG的文件后,再也不用安装LINUX系统来解包和打包system.img文件,这对于新手  机友朋友无疑是一个劲爆的消息,很多朋友都对安装和操作LINUX系统的繁琐望而却步 ...

  6. Android解包命令:unpackbootimg与打包命令:mkbootimg使用

    unpackbootimg&&mkbootimg工具     Android 产品中,内核格式是Linux标准的zImage,根文件系统采用ramdisk格式.这两者在Android下 ...

  7. php phar解包,关于php的打包 解包 Phar

    最近用php连接hive,找到了php-thrift-sql,发现readme里面有一句: 第一次接触是韩老大的创建swooole打包文章 php -c php.ini build.php 因为php ...

  8. matlab 解包,Matlab/Simulink-J1939CAN 解包实现方法

    方才和软件工程师议论Matlab/Simulink下CAN信号打包解包的事变,正巧碰到J1939的坑.晚上花了不少时刻和宋先生沟通,也算有些收成,谢谢宋先生的协助~ 一般的CAN解包/打包体式格局相对 ...

  9. 高通固件解包IPQ6000固件解包

    Ubuntu18 Flash芯片型号是 GD9FS1G8F2AMGI,兆芯工业级 128Mx8,2K+128B Page,128K+8K Block. 芯片ID是 C8 A1 80 15 42 加载m ...

最新文章

  1. 嫌Terminal终端太单调?快收下这几个有趣的改造工具!
  2. ActiveReports 报表应用教程 (14)---数据可视化
  3. python3 print设置不换行
  4. 基于阿里云MaxCompute实现游戏数据运营
  5. 组合框绑定字符串数组的数据 c# 1614236088
  6. 修改tomcat服务器默认端口
  7. 解放计算给服务带来的压力,第一想到的就是阿里云高性能计算(HPC)
  8. 在 IE 中使用 Windows 窗体控件
  9. Java 正则表达式
  10. PowerBi包含什么,以及每一个的介绍
  11. JavaScript注释(多行注释+单行注释)
  12. mysql floor 不准确_MYSQL的floor出现报错如何解决
  13. Python新建Flask项目
  14. 基于51单片机GPS定位系统设LCD12864显示(程序+原理图+PCB+论文)
  15. 兴业银行银企直联查转账手续费和退票流水(C#代码篇)
  16. iOS UIScrollview 取消弹簧效果
  17. 微软认证Programming in C# 70-483 MCP 首日封(首日拿下)
  18. 1421 净现值查询
  19. openssl_private_encrypt(): key param is not a valid private key
  20. Lodash.js学习(二)——difference深度理解

热门文章

  1. 关于行号输出的简单命令
  2. 【学习笔记】Android 图像处理
  3. $.messager.confirm (使用$.messager.defaults修改按钮显示文字)
  4. Linux计划任务详解
  5. 对一条常用命令(netstat结合awk统计TCP连接数)的理解
  6. java实现简单窗体小游戏----球球大作战
  7. 大数据笔记2019.5.11
  8. XGBoost输出特征重要性以及筛选特征
  9. Python 动态变量名定义与调用
  10. 01-html介绍和head标签