制作rom利器bootimg
打包:
? ? ? ? bootimg ?–cpio-list
? ? ? ? bootimg ?–repack-565
? ? ? ? bootimg ?–repack-bootimg
? ? ? ? bootimg ?–repack-ramdisk
? ? ? ? bootimg ?–repack-rle
解压
? ? ? ? bootimg ?–unpack-565
? ? ? ? bootimg ?–unpack-bootimg
? ? ? ? bootimg ?–unpack-ramdisk
? ? ? ? bootimg ?–unpack-rle
? ? ? ? bootimg ?–unpack-updata
? ? ? ? bootimg ?–unpack-yafffs
? ? ? ? bootimg ?–unpack-yaffs
? ? ? ? bootimg ?–unpack-yaffs2
运行方法:
在cmd下cd到文件所在目录,输入"bootimg.exe ?功能 参数"(用源文件的话就是bootimg.py)
目前支持以下功能:
? ? ? ? –repack-ramdisk, 生成 ramdisk
? ? ? ? –unpack-ramdisk, 解开 ramdisk
? ? ? ? –repack-bootimg, 生成 bootimg (包括boot.img及recovery.img)
? ? ? ? –unpack-bootimg, 解开 bootimg
? ? ? ? –unpack-updata, 解开 updata.app
? ? ? ? –unpack-yafffs, 解开 yafffs(包括data.img及system.img)
下面一一说明功能中的参数。
–unpack-updata [文件]
[文件]为空时,默认使用UPDATA.APP
解开后,会有四个文件,boot.img, recovery.img, system.img, userdata.img
这些都是刷机时可能需要的。
–unpack-bootimg [文件]
[文件]为空时,默认使用boot.img
解开后,会有两个文件,kernel和ramdisk.gz
同时,注意输出,比如base, cmdline, name等等
–repack-bootimg [base] [cmdline]
[base]为空时,使用0×200000?
[cmdline]为空时,使用mem=211 console=null androidboot.hardware=qcom?
生成bootimg时,会使用kernel和ramdisk.gz(如果存在ramdisk.cpio.gz,优先使用),生成boot.img
更新:
–repack-bootimg [base] [cmdline] [page_size] [padding_header] [padding_kernel] [padding_ramdisk]
具体的参数请在注意unpack时的原始参数。
–unpack-ramdisk [文件] [目录]
[文件]为空时,使用ramdisk.gz
[目录]为空时,使用initrd, (请保证这个目录不存在)
输出:cpiolist.txt, initrd目录下的文件
–repack-ramdisk [cpiolist]
[cpiolist]为空时,读取cpiolist.txt
根据cpiolist.txt生成ramdisk.cpio.gz
cpiolist.txt格式
1). 文件
file 目标系统路径 当前系统路径 目标系统权限
2). 目录
dir 目录系统路径 目录系统权限
3). 软链接
slink 目录系统路径 链接路径 目标系统权限
–unpack-yafffs [文件] [目录]
[文件]为空时,使用userdata.img (呃,这个比system.img小)
[目录]为空时,使用文件除.img外的其它内容,比如userdata.img时使用userdata