制作jffs2文件系统

zhouning201   2012-4-23 13:47 楼主

作者:程姚根,华清远见嵌入式学院讲师。

1、zlib的编译

解压zlib-1.2.3.tar.bz2并进入zlib-1.2.3配置编译安装

$ tar xvf zlib-1.2.3.tar.bz2 
        $ cd zlib-1.2.3
        $ ./configure
        $ make
        $ make install

2、mtd工具编译

解压mtd-snapshot-20050519.tar.bz2 并进入mtd/util编译安装

$ tar xvf mtd-snapshot-20050519.tar.bz2
        $ cd mtd/util
        $ make 
        $ make install

这样我们的系统里就有了mkfs.jffs2这个工具了

3、jffs2文件系统镜像制作

$ mkfs.jffs2 -r /source/rootfs -o rootfs.jffs2 -e 0x4000 --pad=0x800000 -n
        (-e擦的块大小更cat /proc/mtd下面的要统一,这个参数是根据nand flash芯片手册查到的
        --pad 如果根文件系统小于此参数指定的大小,那么制作成的文件系统镜像会跟指定的参数一样大。
        -n指定小端模式)
        $ cp rootfs.jffs2 /tftpboot

4、jffs2文件系统烧写

# tftp 30008000 rootfs.jffs2
        # nand erase 500000 800000
        # nand write 30008000 500000 800000

5、设置u-boot启动参数

# setenv bootcmd tftp 33000000 zImage\; go 33000000
        # setenv bootargs root=/dev/mtdblock2 init=/linuxrc rootfstype=jffs2 rw
          console=ttySAC0,115200 
        # savenv

6、重新启动开发板,查看是否成功

注意:如果NAND FLASH分区比jffs2文件系统镜像大,会提示一些信息,可以通过在内核中找到打印这些信息的文件(可以用grep命令在内核源码树下搜索),进入其中把相应得prink注释掉就行了。

回复评论 (1)

“jffs2文件系统镜像制作”这点看的不是很明白啊
嵌入式培训www.51great.org
点赞  2012-4-23 15:41
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复