[android]system.img文件的打包和解包

1:system.img的两种格式

system2_0.img: Linux rev 1.0 ext4 filesystem data, UUID=57f8f4bc-abf4-655f-bf67-946fc0f9f25b (extents) (large files)

system1_0.img: Android sparse image, version: 1.0, Total of 393216 4096-byte output blocks in 1765 input chunks.

以上两种格式分别为:  
ext4 filesystem data
Android sparse image

2:两种格式的相互转化工具

//sparse image转化成为ext4的raw imge
Usage: simg2img <sparse_image_files> <raw_image_file>  

//ext4的raw image to  sparse image
Usage: img2simg <raw_image_file> <sparse_image_file> [<block_size>]

3:system.img文件重新打包的过程

总体思路是将system.img镜像挂载后,然后修改,修改完成为使用make_ext4fs命令进行打包。

1:先将system.img文件转化为ext4的raw image file(只要这个格式的system.img可以挂载)

2:然后挂载system.img
sudo  mount system.img /mnt/system

3:然后根据自己的需要,修改/mnt/system目录下的文件

4:重新打包
sudo make_ext4fs -s -l 3096M   new.img /mnt/system

5:重新打包后的文件new.img是sparse image格式,所以需要转化成ext4的 raw image
 sim2img new.img system.img

6:至此,修改system.img,重新打包的过程完成

4:recovery.img的打包解包过程

http://rex-shen.net/android-unpackpack-factory-images/

6:boot.img文件的解包

#操作命令
mkdir boot  &&  cd boot
abooting -x  ../boot.img
#得到这三个文件 :bootimg.cfg  initrd.img  zImage

#initrd.img文件的解包
file initrd.img  
initrd.img: gzip compressed data, from Unix #可以看到是一个gzip的压缩文件

#下面是解压initrd.img文件的命令
mkdir initrd
cd initrd
cat ../initrd.img | gunzip | cpio -vid
#解压上面的initrd.img后,可以看到非常多的文件

#上面编辑完后,重新打包命令如下
cd initrd
find . | cpio --create --format='newc' | gzip > ../myinitd.img


#新写打包boot.img
abootimg --create myboot.img -f bootimg.cfg -k zImage -r myinitrd.img


#下面的命令可以打印出myboot.img文件中的config信息
 abootimg -i myboot.img 

5:Debian系统中包含的Android开发工具

#安装命令
sudo apt-get install  android-tools-adb android-tools-fastboot android-tools-fsutils abootimg

#每个工具的用途,根据需要安装
android-tools-adb
    Android Debug Bridge CLI tool

android-tools-fastboot
    Android Fastboot protocol CLI tool

android-tools-fsutils
    Android ext4 utilities with sparse support

abootimg
    Tool to read/write/update android boot images

 

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 系统镜像(system.img)是安卓系统中的一个重要文件含了操作系统的核心组件和文件。解打包系统镜像可以帮助我们修改、定制和增加系统文件。下面我将介绍一些常用的系统镜像解打包分解合并工具。 最常用的工具是Android Kitchen。Android Kitchen是一个命令行工具,可用于解打包、分解和合并系统镜像。它提供了一套简洁明了的命令,可以方便地进行系统镜像的操作。使用Android Kitchen,我们可以解系统镜像,获取系统文件,进行修改和替换,然后再打包成新的系统镜像。 另一个常用的工具是Android Image Kitchen。Android Image Kitchen是一个图形化界面的工具,功能也类似于Android Kitchen。它提供了更直观的操作界面,适合那些不熟悉命令行的用户使用。通过Android Image Kitchen,我们可以轻松地解打包、分解和合并系统镜像。 除了上述工具,还有一些其他工具也可以用于系统镜像的解打包分解合并。例如,Binwalk是一个用于分析和提取文件的工具,可以在系统镜像中查找并提取特定的文件。也可以使用Android NDK提供的相关工具,如mkbootimg和unpackbootimg来处理与启动相关的镜像文件。 综上所述,解打包分解合并系统镜像是定制和修改安卓系统的重要步骤。Android Kitchen、Android Image Kitchen以及其他一些工具可以帮助我们完成这些操作,使我们能够对系统进行个性化定制和优化。 请注意,上述内容仅供参考,实际操作中还需根据具体情况选择合适的工具和方法,并遵循相关的法律规定。 ### 回答2: system.img打包分解合并工具主要是用于处理Android系统镜像文件中的system.img文件。这个工具用于将系统镜像文件中的system.img文件成可读的文件夹,以便用户可以查看和修改其中的文件。 使用解工具,用户可以将system.img文件为一系列文件夹和文件,这些文件含了Android系统的核心文件、应用程序、库文件等。用户可以在解后的文件夹中进行文件的添加、修改或删除,以定制化系统镜像,加入自己所需的功能或应用。 而当用户完成对系统文件的修改后,打包工具可以将这些文件夹和文件重新打包成system.img文件,以便用户可以将定制化后的系统镜像刷入到设备中。这个过程还可以括压缩系统文件以减小文件大小,进一步节省设备存储空间。 分解工具则可以将system.img文件按照一定的规则拆分为多个小的img文件,这样可以方便用户在空间有限的设备上进行存储和传输。 合并工具则是将多个system.img文件合并成一个大的system.img文件,这对于一些需要合并多个系统镜像的情况很有用,比如将多个厂商提供的ROM镜像文件合并后刷入设备。 总的来说,system.img打包分解合并工具是一种有效的工具,帮助用户处理Android系统镜像文件中的system.img文件,提供了多种操作方式,方便用户进行定制化和优化系统。 ### 回答3: system.img打包分解合并工具是一种用于处理Android系统镜像文件system.img的工具。system.imgAndroid系统中的一个重要文件含了系统的核心文件和库。 解工具的作用是将system.img文件拆分成多个文件夹和文件。解后,我们可以查看并编辑其中的文件,比如修改系统配置文件、添加自定义脚本等。这对于进行系统定制或者ROM开发非常有帮助。 打包工具则是将经过修改的文件重新打包成一个完整的system.img文件。这样修改后的系统文件就可以被重新刷入到手机或其他Android设备中,实现定制化的系统。 对于分解工具来说,它可以将已经解后的system.img文件再次拆分成多个文件夹和文件。这对于查看和修改系统文件非常方便,可以按照自己的需求进行修改和定制。 合并工具则是将解后的文件重新合并成一个完整的system.img文件。这在系统定制完成后,需要将修改后的文件重新打包成一个系统镜像文件,方便刷入到其他设备中使用。 总之,system.img打包分解合并工具是一套功能齐全的工具集,可以方便地进行Android系统镜像文件的处理和定制,提供了对系统文件的查看、编辑和打包的功能,方便开发者进行系统定制和ROM制作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值