UBI mkfs.ubifs 参数记录

  • NAND 硬件结构如下:

  • 脚本如下

sudo mkfs.ubifs  -q -r rootfs_iproute -m 4096 -e 248KiB -c 3840 -o  ubifs.img -F

echo mkfs.ubifs over!
sudo ubinize -o ubi.img -m 4096 -p 256KiB ubinize.cfg
echo ubinize over!

sync

sudo cp ubi.img ~/image -rf
sync
sudo rm ubifs.img  ubi.img  -rf
sync
echo make file system ok !
  • 配置文件 ubinize.cfg :

[ubifs]
mode=ubi
image=ubifs.img
vol_id=0
vol_size=960MiB
vol_type=dynamic
vol_name=rootfs
vol_flags=autoresize
  • mkfs.ubifs 参数分析

-m 最小 I/O 单元大小,一般是页大小, 4096 byte
-r 是指定哪个文件系统作为文件系统。
-e 是可擦除逻辑块大小,一般等于 (每块的页数 - 2)* 页大小 = (64byte - 2) * 4096 == 248Kbyte
-c 是最大可擦除逻辑块总数,这个是从 ubinize.cfg 里面的 vol_size / ubinize 里面的 -p 参数
= (960 * 1024) / 256 == 3840
-o 生成的 ubifs.img
-F 自动调整大小。

  • ubinize 参数

-m 和上面一样 , 一般是 页大小 , 4096 byte
-p 一般是块大小, 256KiB

原文地址:https://www.cnblogs.com/chenfulin5/p/10944299.html