Chinaunix首页 | 论坛 | 博客
  • 博客访问: 217544
  • 博文数量: 49
  • 博客积分: 2101
  • 博客等级: 大尉
  • 技术积分: 525
  • 用 户 组: 普通用户
  • 注册时间: 2010-09-07 10:38
文章分类

全部博文(49)

文章存档

2010年(49)

我的朋友

分类: 嵌入式

2010-09-07 15:20:54

前言

首先阅读一些denxDULG中的RootFileSystemOnAJFFS2FileSystem部分。

 

1 制作

使用mkfs.jffs2命令制作,该命令在/eldk4.2/usr/bin目录下

mkfs.jffs2 -U -r ./jffs2 -o fs.jffs2 -b -e 0x10000 --pad=0x380000

各参数的意义:

–r 指定要做成image的原文件夹

-o 指定生成的image的文件名

-e block size,我理解就是flash的扇区大小,我用的AM29LV320MB,扇区大小为64kb

-b big-endian,注意,我在MPC859上实验,必须用-b,用-l就是little endian,结果在u-boot下看不到目录结构

--pad 指定jffs2文件系统的大小

 

2 jffs2文件系统的挂载

注意,想在x86架构下的linux服务器上挂载jffs2,那么制作jffs2时,必须使用-l而不是-b选项。

请载入以下modules

modprobe mtdcore//Fedora下可能出错可以改成modprobe mtd

modprobe jffs2

modprobe mtdram

modprobe mtdchar

modprobe mtdblock

确认以上modules会产生/dev/mtd0 /mtd/mtdblock0目录

dd if=/jffs2.img of=/dev/mtd0

mount –t jffs2 /dev/mtdblock0 /mnt

按照上面的操作如果出现还是不能mount的情况需要先执行一下下面语句

modprobe mtdram total_size=32768 erase_size=256

阅读(2967) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~