如何解包/编辑/打包android系统的boot.img文件

如题所述

方法/步骤boot映像并不是一个完整的文件系统,它是一种android自定义的文件格式,该格式包括了2K的文件头,后面紧跟着是用gzip压缩过的内核,再后面是一个ramdisk内存盘,然后紧跟着第二阶段的载入器程序(这个载入器程序是可选的,在某些映像中或许没有这部分)。此类文件的定义可以从源代码android-src/system/core/mkbootimg找到一个叫做bootimg.h的文件。/* ** +-----------------+ ** boot header 1 page ** +-----------------+ ** kernel n pages ** +-----------------+ ** ramdisk m pages ** +-----------------+ ** second stage o pages ** +-----------------+ ** ** n = (kernel_size + page_size - 1) / page_size ** m = (ramdisk_size + page_size - 1) / page_size ** o = (second_size + page_size - 1) / page_size ** ** 0. all entities are page_size aligned in flash ** 1. kernel and ramdisk are required (size != 0) ** 2. second is optional (second_size == 0 -> no second) ** 3. load each element (kernel, ramdisk, second) at ** the specified physical address (kernel_addr, etc) ** 4. prepare tags at tag_addr. kernel_args[] is ** appended to the kernel commandline in the tags. ** 5. r0 = 0, r1 = MACHINE_TYPE, r2 = tags_addr ** 6. if second_size != 0: jump to second_addr ** else: jump to kernel_addr */ ramdisk映像是一个最基础的小型文件系统,它包括了初始化系统所需要的全部核心文件,例如:初始化init进程以及init.rc(可以用于设置很多系统的参数)等文件看这里是不是显得头大呢,,,今天哥们分享的教程是比较简单的,不需要认识这些东西是做什么的,有什么用,。只需要要一个简单的工具就能实现你想要解包boot.img的问题。。。下载一个ROM助手,百度搜索下就行,最好是官网下载,蘑菇论坛。安装并打开它,在主界面上你会找到“解包IMG”功能的按钮,如何解包、编辑、打包boot.img文件点击后把你的boot镜像文件加载进去,等待几分钟,就能把boot的镜像解开了 ,,上面提示打开文件夹,点击之后,就能找到boot解开后的全部内容,在这里你想怎么编辑就怎么编辑。看到木有boot解包就是这么简单,其实ROM助手还可以解包recovery 、userdara等镜像文件。只要用了就看到,步骤和上面的操作时一样的 。如何解包、编辑、打包boot.img文件K!好了,修改大家就自己去奋斗吧,其实说实话,安卓本来基于LINUX就是在那系统下玩的,用WINDOWS的就比较吃亏了。。截止目前ROM助手还没有打包功能,相信他们开发团队很快就能完善这项功能的说。我这里根据我的经验来分享下如何打包boot镜像文件,这里需要用命令符 开始-运行-cmdd:回车cd boot回车bootimg --repack-bootimg 0x200000 "mem=211M console=null androidboot.hardware=qcom" 2048 4096出现“output boot.img”的字样就显示打包成功6到这里就完全打包解包无压力了,额,recovery userdara 解包打包,就直接按照这个操作步骤即可完成。。。
温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答