1、开发板上查看有关mtd和ubi的接口:
cat /proc/mtd:可以看到当前系统的各个mtd情况,
cat /proc/partitions: 分区信息,有上面的类似
ls /dev/*, 查看设备节点
2、在开发板上mtd3加载ubifs文件系统
(1)ubiattach /dev/ubi_ctrl -m 3 -----将mtd3与ubi建立连接
系统自动将mtd3关联到ubi1上(如果ubi0已经存在,就是ubi1,如果ubi1存在就是ubi2)
(2) ls /sys/class/ubi/
(3) cat /sys/class/ubi/ubi1/dev
(4) cat /sys/class/ubi/ubi1/volumes_count
(5) ls /dev/ubi*
(6) ubimkvol /dev/ubi1 -s 62914560 -N my_ubi
(62914560这个就是指定加载卷的大小,是按字节算的,我这个是60M,你们的自己算)
(7) ls /sys/class/ubi/
“cat /sys/class/ubi/ubi1_0/name”, 你可以得到“my_ubi”,这就是(6)中的名字。
(8) cat
(9) mknod /dev/ubi1_0 c 249 1
(10) mount -t ubifs ubi1_0 /mnt
(11) mount
这是手动加载ubifs到mtd3上,但是如果开发板一重启后,就没有了。
如果想要让开发板开机的时候自动加载,就要改开机启动脚本
vim etc/inittab
添加如下代码:
#Mount myu ubi_filesystem to /mnt
::sysinit:ubiattach /dev/ubi_ctrl -m 3
::sysinit:mount -t ubifs ubi1_0 /mnt
以上添加后的代码是我手动加载了一次后加的,因为我手动加载过一次,mtd3上已经创建了加载卷,所以,我们就只要连接并挂载就可以直接用了