RK3568核心板分区空间不足,如何修改分区大小?

发表时间:2023-09-19 16:10

在对评估板进行开发验证时,时常会遇到根目录空间不足的情况,而在其他分区又有冗余空间,这时则需要对分区大小重新进行分配,合理化利用分区空间。

本文将基于HD-RK3568-IOT评估板主要讲解如何修改eMMC分区大小。

2023918

1. 分区表介绍

本文主要通过修改parameter.txt 分区表文件来实现修改分区大小,示例分区表内容如下:

FIRMWARE_VER:1.0

MACHINE_MODEL:RK3568

MACHINE_ID:007

MANUFACTURER:RK3568

MAGIC:0x5041524B

ATAG:0x00200800

MACHINE:0xffffffff

CHECK_MASK:0x80

PWR_HLD:0,0,A,0,1

TYPE:GPT

CMDLINE:mtdparts=rk29xxnand:0x00002000@0x00004000(uboot),0x00002000@0x00006000(misc),0x00010000@0x00008000(boot),0x00010000@0x00018000(recovery),0x00010000@0x00028000(backup),0x00c00000@0x00038000(rootfs),0x00040000@0x00c38000(oem),-@0x00c78000(userdata:grow)

uuid:rootfs=614e0000-0000-4b53-8000-1d28000054a9

paramter.txt中的uboot,misc,boot,recovery,oem,rootfs分区应该保留,重新分区时无需删除。

分区参数的格式是size@offset(name),size 和 offset 的单位是块,对 EMMC 就是”扇区”,扇区大小是 512byte。EMMC 最前面的 8MiB 空间是保留区,分区时必须从8MiB之后的空间开始。比如第一个分区是 u-boot 分区:

0x00002000@0x00004000(uboot)0x00002000@0x00004000(uboot)

size=0x2000*0x200/0x100000=4MiB

offset=0x4000*0x200/0x100000=8MiB

分区名"uboot"

2. 扩展rootfs分区大小到7GB

目前rootfs在分区表的大小如下所示:

0x00c00000@0x00038000(rootfs),0x00040000@0x00c38000(oem),-@0x00c78000(userdata:grow)


2.png


已知rootfs分区大小是0x00c00000(6GB,进制转换*512Byte),可以考虑从userdata分区中回收0x200000(1GB),oem分区大小不动,那么修改后的分区配置是:

0x00e00000@0x00038000(rootfs),0x00040000@0x00e38000(oem),-@0x00e78000(userdata:grow)

修改完后保存,重新将parameter.txt文件导入到烧写工具中,以及更新修改分区的固件进行烧写,在此需要更新parameter.txt,rootfs,oem以及userdata

烧写成功后进入系统使用df-h 查看存储空间,可以看到/dev/root分区已经从6GB扩展到7GB了。

3.png


武汉万象奥科电子有限公司
服务热线:027-59218026
销售邮箱:sales@vanxoak.com
主营产品:ARM核心板、ARM工控板
工业网关、软硬件定制设计
地址:武汉东湖新技术开发区大学园路长城园路8号海容基孵化园B5

扫描二维码
关注公众号
产品及方案咨询
专业专注   合作共赢
移动电话:181 2058 0511 (湖北)
移动电话:175 7010 9551 (华南、华中)
移动电话:133 0386 9667 (华东、华北)
移动电话:187 3812 7320 (其他)