备份linux rk3399系统固件及恢复

平台

  1. arm64
    rockchip rk3399 linux
  2. pc
    ubuntu 64

背景

没有系统源码以及系统固件的情况下使用,也可通过window系统的AndroidTools工具进行操作,这里仅是linux系统环境进行操作。

步骤

1. 获取rk3399分区表

电脑端linux系统使用瑞芯微rk3399SDK中的烧写软件upgrade_tool,将板子的烧写口和电脑连接起来,板子上电的时候按recovery键进入烧写模式。

./upgrade_tool pl
Program Data in /data/project/rockchip/rk3399/src/rockdev/pack
Partition Info(gpt):
NO  LBA        Size       Name
01  0x00004000 0x00002000 uboot
02  0x00006000 0x00002000 trust
03  0x00008000 0x00002000 misc
04  0x0000a000 0x00010000 boot
05  0x0001a000 0x00010000 recovery
06  0x0002a000 0x00010000 backup
07  0x0003a000 0x00020000 oem
08  0x0005a000 0x00182c00 rootfs
09  0x001dcc00 0x038613df userdata

反推出parameter.txt

FIRMWARE_VER: 2.5.0
MACHINE_MODEL: RK3399
MACHINE_ID: 007
MANUFACTURER: RK3399
MAGIC: 0x5041524B
ATAG: 0x00200800
MACHINE: 3399
CHECK_MASK: 0x80
PWR_HLD: 0,0,A,0,1
TYPE: GPT
CMDLINE: mtdparts=rk29xxnand:0x00002000@0x00004000(uboot),0x00002000@0x00006000(trust),0x00002000@0x00008000(misc),0x00010000@0x0000a000(boot),0x00010000@0x0001a000(recovery),0x00010000@0x0002a000(backup),0x00020000@0x0003a000(oem),0x182c00@0x0005a000(rootfs),-@0x1dcc00(userdata:grow)
uuid:rootfs=614e0000-0000-4b53-8000-1d28000054a9

2. 获取分区

[root@rk3399:~]# ls /dev/block/by-name -l
total 0
lrwxrwxrwx 1 root root 15 Jan 18  2013 backup -> ../../mmcblk1p6
lrwxrwxrwx 1 root root 15 Jan 18  2013 boot -> ../../mmcblk1p4
lrwxrwxrwx 1 root root 15 Jan 18  2013 misc -> ../../mmcblk1p3
lrwxrwxrwx 1 root root 15 Jan 18  2013 oem -> ../../mmcblk1p7
lrwxrwxrwx 1 root root 15 Jan 18  2013 recovery -> ../../mmcblk1p5
lrwxrwxrwx 1 root root 15 Jan 18  2013 rootfs -> ../../mmcblk1p8
lrwxrwxrwx 1 root root 15 Jan 18  2013 trust -> ../../mmcblk1p2
lrwxrwxrwx 1 root root 15 Jan 18  2013 uboot -> ../../mmcblk1p1
lrwxrwxrwx 1 root root 15 Jan 18  2013 userdata -> ../../mmcblk1p9

3. dd复制分区镜像

dd if=/dev/mmcblk1p1 of=uboot.img
dd if=/dev/mmcblk1p2 of=trust.img
dd if=/dev/mmcblk1p3 of=misc.img
dd if=/dev/mmcblk1p4 of=boot.img
dd if=/dev/mmcblk1p5 of=recovery.img

非必要镜像:

dd if=/dev/mmcblk1p6 of=backup.img
dd if=/dev/mmcblk1p7 of=oem.img
dd if=/dev/mmcblk1p8 of=rootfs.img
dd if=/dev/mmcblk1p9 of=userdata.img

4. 恢复分区镜像

电脑端linux系统使用瑞芯微rk3399SDK中的烧写软件upgrade_tool(tools/linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool/upgrade_tool),将需要烧写的文件从rk3399板子中导出并放置在与upgrade_tool同目录下。

upgrade_tool ul rk3399_loader_v1.24.126.bin
upgrade_tool di -p paramater.txt
upgrade_tool di -uboot uboot.img
upgrade_tool di -trust trust.img
upgrade_tool di -b boot.img
upgrade_tool di -r recovery.img
upgrade_tool di -m msic.img
upgrade_tool di -oem oem.img
upgrade_tool di -userdata userdata.img
upgrade_tool di -rootfs rootfs.img

其中,boot.img包含了kernel以及设备树文件。
说明:

分区名镜像名简介
loaderMiniLoaderAll.bin一级loader
u-bootuboot.img二级loader
trusttrust.img安全环境,如OP-TEE、ATF
miscmisc.img引导参数分区
recoveryrecovery.imgkernel+dtb+ramdisk 组成的根文件系统
bootboot.imgkernel+dtb
rootfsrootfs.img根文件系统,只读
oemoem.img厂商预制,可读写
userdatauserdata.img用于数据,可读写
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值