模板:RKExportPackFirmware

来自ARM Wiki
Sunxiaolin讨论 | 贡献2020年12月28日 (一) 18:51的版本 (创建页面,内容为“===导出rootfs=== 提供两种方式导出rootfs,基于rsync的export_rootfs命令方式,和基于系统recovery模式的dd命令方式。使用性能好的U...”)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转至: 导航搜索

导出rootfs

提供两种方式导出rootfs,基于rsync的export_rootfs命令方式,和基于系统recovery模式的dd命令方式。使用性能好的U盘或大容量的移动硬盘并格式成ext4格式可提升导出速度。

  • 使用export_rootfs命令导出

系统下已添加export_rootfs命令。将U盘或硬盘接入目标板,使用mount命令找出挂载路径或手动挂载,终端命令行下使用root用户执行:

export_rootfs /media/norco/upan/

等待程序执行完成即可,分区镜像保存在/media/norco/upan/路径下。

  • 串口终端下,进入recovery模式,使用dd命令进行克隆

在串口终端下使用root用户执行:

reboot recovery

进入recovery模式,使用blkid命令及cat /proc/partitions命令找出系统分区,一般为/dev/mmcblk1p8。将U盘或硬盘接入目标板,使用mount命令找出挂载路径或手动挂载,终端命令行下执行:

dd if=/dev/mmcblk1p8 of=/media/usb0/rootfs.img conv=sparse &
e2fsck -p -f /media/usb0/rootfs.img
resize2fs -M /media/usb0/rootfs.img

最终/media/usb0/rootfs.img即为系统分区镜像。

在Windows下打包完整固件

烧录工具RKDevTool.exe可用于升级固件和解包固件;打包工具脚本mkupdate.bat用于将各分区镜像打包成一个完整的固件。

  • 将烧录、打包工具RKDevTool.zip解压到当前文件夹
  • 使用烧录工具RKDevTool\RKDevTool_Release\RKDevTool.exe的高级功能解包初始固件update.img,解包后各个分区镜像和打包配置文件保存在RKDevTool\RKDevTool_Release\Output中

Screenshot from 2020-12-28 15-06-14.png

  • 根据需要替换指定分区镜像,比如替换根文件系统分区镜像RKDevTool_Release\Output\Android\Image\rootfs.img
  • 将整个RKDevTool\RKDevTool_Release\Output\Android\Image\目录移动到RKDevTool\rockdev\目录下
  • 将打包配置文件RKDevTool\RKDevTool_Release\Output\Android\package-file移动替换到RKDevTool\rockdev\目录中
  • 双击执行对应芯片平台的打包脚本,比如RKDevTool\rockdev\rk3399-mkupdate.bat,完成后完整固件update.img保存在RKDevTool\rockdev\目录中

Screenshot from 2020-12-28 15-01-24.png