定制自己的update.zip刷机包
定制自己的 update.zip 刷机包
引子:
我们已经获得了 system.img 这个系统包,下一步我们就是需要对 system.img 这个文件解包并打包
成 update.zip 的形式用来刷机,那么请参照下面的步骤开始共同学习。
深蓝教程系列:
1. ① 从官方 RUU 刷机程序中提取官方原版 ROM
2. ②Odex 文件转换为 dex 文件
3. ③金卡 ROOT 刷机详细教程+动态壁纸天气共存 ROM
4. ④从 system.img ...
定制自己的 update.zip 刷机包
引子:
我们已经获得了 system.img 这个系统包,下一步我们就是需要对 system.img 这个文件解包并打包
成 update.zip 的形式用来刷机,那么请参照下面的步骤开始共同学习。
深蓝教程系列:
1. ① 从官方 RUU 刷机程序中提取官方原版 ROM
2. ②Odex 文件转换为 dex 文件
3. ③金卡 ROOT 刷机详细教程+动态壁纸天气共存 ROM
4. ④从 system.img 定制自己的 update 刷机包
教程正文:
一、准备工作:
1、提取 system.img ,具体方法见:① 从官方 RUU 刷机程序中提取官方原版 ROM 提取到后,
把 system.img 放到你的 linux 操作环境可以访问的某个文件夹,例如 system/system.img ,尽量把
文件夹命名成 system ,以后就不用修改压缩包了(Linux 的路径书写方式,这里需要提示一点,Linux 终
端是对大小写敏感的,请注意。)
2、Linux 操作环境(任意的,例如:虚拟机安装、虚拟机 LiveCD、实机安装、实机 LiveCD等等,不在
本教程讨论范围)
3、img 解包工具 unyaffs 并解压缩,附件提供: unyaffs.zip (3.97 KB)
附官方下载地址:http://code.google.com/p/unyaffs/downloads/list 如下图:
二、解包 system.img 文件
1、启动Linux并以 root 用户登录(如何用 root登录,自己在网上搜索一下吧),把刚才解压的 unyaffs 复
制到 /bin 文件夹下:
2、启动终端,进入 /bin 文件夹(cd /bin),输入如下命令 sudo chmod 777 unyaffs (赋予 unyaffs
执行权限):
3、进入刚才存放 system.img 文件夹,(例如我的是/media/Soft/system/(这里的media是挂载的
硬盘分区,Soft是硬盘分区卷标(我的是 F盘))里,执行命令 unyaffs system.img (解包 img 的命
令行),直到屏幕显示:
4、进入 system文件夹删除 system.img 文件
5、在终端命令行状态下输入命令 sudo chmod -R 777 * (为 system 文件夹下所有目录和文件赋
予最高权限):
三、打包最原始的 update.zip
1、在终端命令行状态下输入命令返回 system的上一级目录(父目录),如下图:
2、在终端命令行下执行 zip -r system.zip system(把 system文件夹打包成 zip文件)
3、把 system.zip文件夹重命名为 update.zip 备用,system 文件可以删除了(如果以后需要从这里
提取原机程序,是可以保留的)
四、修改 update.zip 为可刷机的 ROM 包
1、重新启动计算机,进入 windows操作系统
2、这里我们需要两个东东:① 刷机脚本 ② 内核(boot.img)。其中刷机脚本可以从其他大侠的 rom
里提取,(提取整个 META-INF 文件夹)这里就不再赘述,下面会提供一个最基本的(详细的刷机脚本命令
正在研究,这个需要看 Recovery的源代码来确定);boot.img (必须适用你的机型)在 ① 从官方 RUU 刷
机程序中提取官方原版 ROM 教程中在那个压缩文件里就有,也可以从大侠们的 rom里提取。
基本的升级脚本 update-script代码
1. show_progress 0.1 0
2.
3. format SYSTEM:
4. copy_dir PACKAGE:system SYSTEM:
5. show_progress 0.2 0
6. format BOOT:
7. write_raw_image PACKAGE:boot.img BOOT:
8. show_progress 0.2 10
复制代码
其中 show_progreess x.x x 是在刷机的时候显示进度的
format SYSTEM:是格式化 system 用的
copy_dir PACKAGE:system SYSTEM: 是把升级包里的 system文件夹复制到 system分区
write_raw_image PACKAGE:boot.img BOOT: 刷写包内的 boot.img(内核的)
具体详细的代码请参照一定定制的刷机包中的相同文件,这里不在赘述(主要是没有吃透,害怕出错)
3、准备好了 update.zip、META-INF 文件夹 boot.img 内核映象,就可以开始了,用 winrar 打
开 update.zip 文件(不是解压缩),把 META-INF boot.img 直接拖进压缩包里,然后用签名工具对新
的 update.zip 签名就可以了。
4、签名工具下载: Rom-sign.rar (9.57 KB)
签名方法:把下载的 Rom-sign 解压,把新的 update.zip 文件放到该文件夹,运行 Sign.bat 批处理
文件就可以了(这里需要注意的是,zip文件的文件名必须为 update.zip)等待批处理运行完毕后,该目录
下会生成已经签名的 update_signed.zip。
至此你自己的原汁原味原版的自定义 Rom 就诞生了。
PS:具体 ROM定制细节我将在 ROM 定制的详细教程里详细阐述,这里就不再提了。
问
解答专区
1、
深兰你好,签名工具总不能正常打开啊,一直提示找不到指定文件,脚本 JAVA我也按相关帖调拭了,不知问
题出在 ...
就这么样 发
于 2010-6-3 13:58
你的批处理有问题,把 sign.bat用记事本打开,用一下代码替换:
1. @ECHO OFF
2. Echo Auto-sign Created By Dave Da illest 1
3. Echo Update.zip is now being signed and will be renamed to update_signed.zip
4. java -jar signapk.jar testkey.x509.pem testkey.pk8 update.zip update_signed.zip
5. Echo Signing Complete
6. Pause
7. EXIT
复制代码
深兰你好,签名工具总不能正常打开啊,一直提示找不到指定文件,脚本 JAVA我也按相关帖调拭了,不知问
题出在 ...
就这么样 发表于 2010-6-3 13:58
你的批处理有问题,把 sign.bat用记事本打开,用一下代码替换:
1.
2. @ECHO OFF
3. Echo Auto-sign Created By Dave Da illest 1
4. Echo Update.zip is now being signed and will be renamed to update_signed.zip
5. java -jar signapk.jar testkey.x509.pem testkey.pk8 update.zip update_signed.zip
6. Echo Signing Complete
7.
8. Pause
9. EXIT
复制代码
本文档为【定制自己的update.zip刷机包】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。