构造根文件系统四之制作使用 yaffs文件系统映像文件

     所谓的制作文件系统映像文件,就是将一个目录下的所有内容按照一定的格式存放到一个文件中,这个文件可以直接烧写到存储设备上去。当系统启动后挂接这个设备,就可以看到原来目录一样的内容。制作不同类型的文件系统映像文件需要使用不同的工具。

1、修改制作 yaffs映像文件的工具

   首先声明,我也是初次学习制作根文件系统,完全是比着葫芦画剽,照着韦老师的教程写的,至于为什么要修改,是为了适应他之前编译的linux2.6.22.内核,不过不要紧,重要的是先熟悉流程,废话不多说,我也不进行修改,因为我用的内核不是他的,先生成yaffs映像文件再说。

   制作 yaffs映像文件的工具名叫 mkyaffsimage ,可以通过在yafs源码包内make获取。yaffs源码包点此下载

2、下图为我将此yaffs源码包的存放位置。

 

3、执行命令:tar -xzvf yaffs_source.tar.gz 解压源码包

  

4、咱们可以看到此时解压的文件夹为 Development

   执行命令: cd Development/yaffs2/utils/ 

   

   在这个目录中,存放的是工具 mkyaffsimage 和 mkyaffs2imag 的源代码,前者用来制作 yaffs1 映像文件,后者用来制作yaffs2映像文件。

  

  同时,我先声明一点,我只能保证生成yaffs映像文件,并不能保证生成的映像文件能在我的mini2440板子上运行,因为我也是初学,写这博文主要是为了熟悉流程,具体的生成适合自己板子的还要加以配置,我一定会弄出来的!

   现在,暂不修改。

   执行命令:make 编译生成mkyaffsimage工具

   

   现在可以看到生成了mkyaffsimage工具了

   

5、执行命令:sudo cp mkyaffsimage /usr/local/bin/   将该工具复制到 /usr/local/bin 目录

  

6、执行命令:sudo chmod +x /usr/local/bin/mkyaffsimage

  

7、现在可以制作yaffs映像文件了

  执行命令:cd  /home/song/nfs_root

  

  执行命令:mkyaffsimage fs_mini  fs_mini.yaffs  可以看到生成了yaffs镜像文件

   

8、此时你可以利用uboot控制界面将 fs_mini.yaffs下载、烧如Nand Flash了,操作命令如下

  执行命令:  tftp fs_mini.yaffs

  

  可以看到,下载根文件系统完毕。

  执行命令:nand erase 0x580000  0xfa80000 #擦除此区域,nand使用之前需要先擦除,以便接下来将fs_mini.yaffs保存到这个地址处

 

 执行命令:nand write.yaffs 0x30008000 0x580000 0xdbb040

  

  现在可以修改命令行参数以MTD2分区作为根文件系统,比如在 U-bood控制界面如下设置

  [u-boot@MINI2440]# set bootargs noinitrd console=ttySAC0  root=/dev/mtdblock2  rootfstyle=yaffs 

  [u-boot@MINI2440]# saveenv

  

  到这里已经完成了,虽然制作出了根文件系统yaffs格式,但是并没有在我的板子上启动起来,结果不出所料,失败的原因就是还没有正确配置根文件系统,并且没有考虑移植的内核。接下来的任务就是好好学学怎么样配置。加油!

  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

玖零大壮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值