rkflashkit的安装与使用
rkflashkit的安装与使用声明版权声明:博文为原创内容,可以转载或引用,但须在明显位置标明原文作者和出处,未经同意不得擅自修改本文内容!博客地址:http://www.voidcn.com/article/p-smfhefew-bph.html 摘要rkflashkit 是一个用于烧写瑞芯微设备的开源图形界面版本软件。它不能烧写bootloader或者parameter,只支持烧写内核和其他分区,但是它支持备份这些分区。因此可用于将存储在flash芯片中的各个分区dump到文件中来。 1. rkflashkit安装rkflashkit 是一个用于烧写瑞芯微设备的开源图形界面版本软件。它不能烧写bootloader或者parameter,只支持烧写内核和其他分区,但是它支持备份这些分区。因此可用于将存储在flash芯片中的各个分区dump到文件中来。 首先需要先安装rkflashkit sudo apt-get install build-essential fakeroot
git clone https://github.com/linuxerwang/rkflashkit
cd rkflashkit
./waf debian
sudo apt-get install python-gtk2
sudo dpkg -i rkflashkit_0.1.2_all.deb
2. rkflashkit使用使用rkflashkit需要先让设备进入bootloader状态,即刷机状态。rkflashkit有图形界面和命令行两种模块: (1)图形界面 sudo rkflashkit
(2)命令行模式 $ rkflashkit --help
Usage: <cmd> [args] [<cmd> [args]...]
part List partition
flash @<PARTITION> <IMAGE FILE> Flash partition with image file
cmp @<PARTITION> <IMAGE FILE> Compare partition with image file
backup @<PARTITION> <IMAGE FILE> Backup partition to image file
erase @<PARTITION> Erase partition
reboot Reboot device
For example,flash device with boot.img and kernel.img,then reboot:
sudo rkflashkit flash @boot boot.img @kernel.img kernel.img reboot
比如查看各个分区的大小和起始地址,偏移地址,只需要输入rkflash part就可以一目了然: recovery$ sudo rkflashkit part
Found devices:
0x2207:0x310b
============= 2017-03-14 10:53:57 ============
Reading flash information
Loading partition information
CMDLINE:console=ttyFIQ0 androidboot.console=ttyFIQ0 init=/init initrd=0x62000000,0x00800000 mtdparts=rk29xxnand:0x00002000@0x00002000(misc),0x00004000@0x00004000(kernel),0x00008000@0x00008000(boot),0x00008000@0x00010000(recovery),0x000C0000@0x00018000(backup),0x00040000@0x000D8000(cache),0x00100000@0x00118000(userdata),0x00002000@0x00218000(kpanic),0x00100000@0x0021A000(system),-@0x0033A000(user)
Partitions:
misc (0x00002000 @ 0x00002000) 4 MiB
kernel (0x00004000 @ 0x00004000) 8 MiB
boot (0x00008000 @ 0x00008000) 16 MiB
recovery (0x00008000 @ 0x00010000) 16 MiB
backup (0x000C0000 @ 0x00018000) 384 MiB
cache (0x00040000 @ 0x000D8000) 128 MiB
userdata (0x00100000 @ 0x00118000) 512 MiB
kpanic (0x00002000 @ 0x00218000) 4 MiB
system (0x00100000 @ 0x0021A000) 512 MiB
user (0x00B56000 @ 0x0033A000) 5804 MiB
Done!
rkflash可用于备份各个分区,比如system,boot,kernel,recovery等,下面以 cache分区为例,介绍一下如何在不破坏现场环境的情况下将cache分区dump到文件cache.img来并取出升级日志: (1)dump cache分区 sudo rkflashkit backup @cache cache.img
(2)在PC上以ext4格式挂载cache镜像 sudo mount -t ext4 cache.img /mnt/cache-dir/
(3)从cache-dir目录取出log日志文件 /mnt/cache-dir/recovery/last_log
/mnt/cache-dir/recovery/last_install
/mnt/cache-dir/recovery/last_locale
当然,rkflashkit也可当成刷机工具来使用,比如,现在想将system.img烧写到 system分区,则可用以下命令: sudo rkflashkit erase @system system.img
4. 再啰嗦几句rkflashkit是个好东西,对于排查盒子升级问题作用很大。由于可以dump flash各个分区,平时分析system分区文件丢失也经常用到,当然,还可以当成刷机工具使用,可谓是RK平台的功能强大的工具。 by WalkAloner 2017/03/14 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |