我手头上有一份ubifs文件系统的镜像,但没有源码。现在想修改文件系统的控制台,所以就想着把文件系统挂载到pc机上,修改完成之后在生成新的文件系统。
步骤如下;
1.在linux系统下虚拟出nandflash
#modprobe mtd
#modprobe mtdblock
#modprobe nandsim first_id_byte=0x20 second_id_byte=0xa2 third_id_byte=0x00 fourth_id_byte=0x15
#chmod 660 /dev/mtd*
#cat /proc/mtd 可以产看nandflash的相关信息
2.写入镜像到nandflash中
#dd if=ubi.img of=/dev/mtd0 bs=2048
3加载文件系统并attach MTD设备
#modprobe ubi
#ubiattch /dev/ubi_ctrl -m 0 -O 2048
-m 指定挂在在mtd0上
-O 参数用来指定VID header offset
4.mount文件系统
#mount -t ubifs ubi0_0 ~/rootfs
5.修改文件系统
#vi ~/rootfs/etc/inittab
将ttyS0改为ttyS1,即可完成控制台的修改
6.umount文件系统
#umount ~/rootfs
7.detach MTD设备
ubidetach /dev/ubi_ctrl -m 0
8.将nandflash的内容写回指定的文件中
#dd if=/dev/mtd0 of=ubi.img bs=2048
至此完成。