因为jffs2是构建于MTD设备上的文件系统,所以不能象光盘的映像文件一样通过loop设备来挂载,但是可以通过mtdram设备来挂载。mtdram是在用RAM实现的MTD设备,可以通过mtdblock设备来访问。使用mtdram设备很简单,只要加载mtdram和mtdblock两个内核模块即可。
详细步骤
1.加载mtdblock内核模块
# modprobe mtdblock
2.加载mtdram内核模块
将该设备的大小指定为jffs2根文件系统映像的大小,块擦除大小(即flash的块大小)指定为制作该jffs2根文件系统时“-e”参数指定的大小,缺省为64KB。下面两个参数的单位都是KB。
# modprobe mtdram total_size=49152 erase_size=128
3.复制文件系统内容
这时将出现MTD设备/dev/mtdblock0,使用dd命令将jffs2根文件系统拷贝到/dev/mtdblock0设备中。
# dd if=rootfs.jffs2_zylonite_qvga of=/dev/mtdblock0
4.挂载文件系统
将保存了jffs2根文件系统的MTD设备挂载到指定的目录上。
# mount -t jffs2 /dev/mtdblock0 /mnt/mtd
这之后就可以到/mnt/mtd目录查看、修改挂载的jffs2根文件系统了,修改后的jffs2根文件系统可以通过dd命令拷贝为一个jffs2的映像文件。