本帖最后由 Timan 于 2013-4-17 12:46 编辑 刷szb: 在外置SD卡建立sdfuse目录, 把.szb文件放到sdfuse目录, 关机, 按住“音量+ ”开机, 在选择界面用音量键切换到SD UPDATE, 然后按电源键确认即可。 可以用于刷各种官方固件和民间重新打包的szb固件,以及MIUI/CWM recovery和充电长按补丁。 刷img: 需要fastboot.exe,然后丢到adb.exe所在目录,只需记住下面几条命令就行,其他的意义不大就不介绍了。 复制代码 需要注意的是,fastboot的驱动跟各种手机助手一般情况下使用的驱动不同,正确的操作方式如下: 关机, 按住“音量+”开机, 选择USB UPDATE, 连接电脑后,系统会提示安装android 1.0的驱动,这时候请上豌豆荚搞定, 然后运行fastboot命令刷入你想要的img即可。 (如果你看了这段话感觉一头雾水,那说明你不应该折腾这个) (对于各种一键更换××失败的人来说,你们应该查看工具包内的bat,然后手动进行fastboot flash 操作) 刷zip: 刷zip的前提是MIUI或者CWM recovery吧,没有看到基于官方recovery的zip包呢。 MIUI可以触屏操作,CWM不支持触屏,需要用音量上下键来选择。 其实没什么好说的,找到刷机包的zip后确定刷入即可。 ============上面的就差不多了================= 下面有一些深度折腾的步骤。 本来linkscue有一个工具包的,但是集成度越高,外行就越难看懂。 所以我下面这部分算是拆轮子,对于想研究的人来说,这样可以更容易判断问题所在。 想要折腾内核的,Linux是必需的: Ubuntu 12.10下要安装如下额外的软件包: sudo apt-get install make sudo apt-get install gcc (vmware tools 所需) sudo apt-get install libncurses5-dev(make menuconfig配置内核所需)szb的解压
system.img的修改:
然后把生成的 systemdir.gz拷贝到Windows下解压修改。 重新打包system.img部分暂缺,因为我没试过。 boot.img的修改 解压: split_boot.img.pl boot.img 本命令会生成boot.img-ramdisk.gz(initrd)和boot.img-kernel(内核)。 内核的编译——生成自己的zImage : http://bbs./t-235372-1-1.html initrd部分的修改 解压之前要先跳过64 byte的文件头才能得到一个正常的gz文件。 dd if= boot.img-ramdisk.gz of=ramdisk.gz bs=64 skip=1即可 (感谢linkscue的工具) 生成的ramdisk.gz就可以直接用归档管理器解压并编辑内容。 编辑完成后,进入initrd的文件夹,在文件夹内运行: find . | cpio -o -H newc | gzip >../newramdisk.gz 用这个命令处理之后,虽然文件大小几乎没变,但是文件信息有了很大的不同:即可生成一个新的newramdisk.gz 然后需要在这个newramdisk上重新加上文件头,好让系统把这个东西当作ramdisk 命令是./mkimage -A arm -O linux -T ramdisk -C none -a 0x40800000 -n "ramdisk" -d newramdisk.gz ramdisk_OK.gz u-boot legacy uImage, ramdisk, Linux/ARM, RAMDisk Image (Not compressed), 1241096 bytes, Wed Apr 17 12:30:42 2013, Load Address: 0x40800000, Entry Point: 0x40800000, Header CRC: 0x8CCCB6AA, Data CRC: 0x3E47689F 然后就可以用我们的zImage和新的ramdisk一起重新打包成img
为防止悲剧,请在测试自己的内核之前备份原有的boot.img:
工具放这里: http://pan.baidu.com/share/link?shareid=402475&uk=3657498617 有fastboot.exe和两个recovery的szb。 leszb目录包含了所有Linux下面的工具。 |
|