boot.img 存放了 boot 分区的内容,boot分区负责存放系统正常启动时linux zImage内核及 ramdisk 临时根文件系统。
可以使用mkbootimg、unpackbootimg 打包、解包。
https://github.com/osm0sis/mkbootimg 有mkbootimg、unpackbootimg 的源码,git 取出狗make即可生成可执行文件。
我这里make出错,手工去掉 makefile 文件内的 Werror 既可。
1 2 | mkdir out unpackbootimg -i boot.img -o .\out |
即可解包,注意需要预先创建 out 目录,否则解包失败…
通过下面的命令可以把 ramdisk 解压出来。
1 2 3 4 5 | gamexg@gamexg-VirtualBox:~/mkbootimg/out$ cp boot.img-ramdisk.gz ramdisk.cpio.gz gamexg@gamexg-VirtualBox:~/mkbootimg/out$ gzip -d ramdisk.cpio.gz gamexg@gamexg-VirtualBox:~/mkbootimg/out$ mkdir ramdisk gamexg@gamexg-VirtualBox:~/mkbootimg/out$ cd ramdisk gamexg@gamexg-VirtualBox:~/mkbootimg/out/ramdisk$ cpio -i -F ../ramdisk.cpio |
打包就没再操作,本来计划修改 boot.img 把开机画面改掉,结果发现这里保存的画面是android原版的,证明真正的开机画面还是没在这里保存…
fastboot flash splash splash1.img 刷完后开机画面还是老样子,实在头疼啊…
不过能看到fstab ,也算有点作用吧(虽然mount也可查出来)。
参考:
http://blog.csdn.net/wh_19910525/article/details/8200372
http://blog.csdn.net/ttxgz/article/details/7742696