内存包含三种常用的操作方式mtd(物理设备原始,flash,提供读写接口,存在坏块)、ubi(逻辑设备,在mtd的基础上做了逻辑映射,没有坏块)、ubifs(是在ubi的基础上制作的ubi卷,可以挂在到文件系统上,直接在shell里面进行读写操作)
具体的介绍链接:https://blog.csdn.net/weixin_36163101/article/details/116907462
1 新建ubi 卷:
ubimkvol /dev/ubi0 -N new_volume -s 3000KiB
其中new_volume 是新建的卷的名字,3000KiB 为大小,也可以是MiB
2 删除ubi 卷:
ubirmvol /dev/ubi0 -n $volume_id
volume_id 是要删除的卷的编号,ubi为每个卷都分配一个index,从0 开始
3 重命名ubi 卷
ubirename /dev/ubi0 volume1 volume2 volume3 volume4
把volume1 重命名为volume2,volume3 重名名为volume4
4 用可读可写的方式挂载ubi 卷,卷名为rootfs
mount -o rw -t ubifs ubi0:rootfs /mnt
5 用以在运行的时候,把整个系统的内容,备份到另一个卷,并采用zlib格式进行压缩
mount -o rw -t ubifs ubi0:rootfs /media
mkfs.ubifs -r /media /dev/ubi0_2 -x zlib -y yes
先把当前的rootfs分区挂载到一个空目录下面,然后把改目录下的文件写到另一个ubi 分区里面
6 使用ubifs文件更新整个卷
ubiupdatevol /dev/ubi0_2 rootfs.ubifs
rootfs.ubifs 是要写入的那个文件