Welcome 微信登录

首页 / 操作系统 / Linux / UT6410 Linux 2.6.24 YAFFS2做根文件系统方法

ut6410开发板自带的是cramfs文件系统作为根文件系统使用的,该文件系统只读,为了调试方便,将其改为yaffs2,具体方法为:1、yaffs2文件系统内核支持,参见《Linux下YAFFS2 移植步骤》:http://www.linuxidc.com/Linux/2011-02/32305.htm完成之后,make bzImage,然后在板子上启动新编译的内核,cat /proc/filesystems
。。。。。。。。。vfat
nodev nfs
nodev jffs2
romfs
yaffs
yaffs2
nodev rpc_pipefs说明文件系统包含正确。2、编译mkyaffs2image在下载的yaffs2源码的util2目录里make,生成mkyaffs2image,最好使用自己生成的mkyaffs2image,否则可能会有一些莫名其妙的错误。3、开发板环境设置:首先查看flash分区信息:0x00000000-0x00100000 : "Bootloader"0x00100000-0x00300000 : "Kernel"0x00300000-0x03300000 : "Root-Cramfs"0x03300000-0x10000000 : "File System"
因此将最后一个分区作为yaffs分区使用。首先制作yaffs2根文件系统镜像:./mkyaffs2image root_fs_2.6.25.8_ccid rootfs_yaffs.img然后设置板子bootargs:SMDK6410 # setenv bootargs root=/dev/mtdblock3 rootfstype=yaffs init=/linuxrc console=ttySAC0,115200SMDK6410 # saveenv然后下载制作的镜像,烧写flash:SMDK6410 # nand erase 3300000 cd00000SMDK6410 # dnw c0008000SMDK6410 # nand write c0008000 3300000 1c2c9004、执行如果成功,系统可以正常加载根文件系统:yaffs: dev is 32505859 name is "mtdblock3"yaffs: passed flags ""yaffs: Attempting MTD mount on 31.3, "mtdblock3"yaffs: auto selecting yaffs2yaffs_read_super: isCheckpointed 0VFS: Mounted root (yaffs filesystem).