Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3170388
  • 博文数量: 685
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 5303
  • 用 户 组: 普通用户
  • 注册时间: 2014-04-19 14:17
个人简介

文章分类

全部博文(685)

文章存档

2015年(116)

2014年(569)

分类: 嵌入式

2014-10-11 10:53:35

原文地址:http://blog.chinaunix.net/uid-26552184-id-3510481.html

squashfs是一个只读压缩文件系统,对嵌入式来说,可以减少成本,在使用nand flash作为存储设备的开发板来说,要使用squashfs首先内核当中要有对squashfs的支持,同时还要有对mtd字符设备和块设备的支持。

针对将squashfs放在一个nand 分区的情况,对squashfs的操作应该有下面几步:

a.制作squashfs镜像(本操作位于宿主机)
#mksquash xxxx xxxx.squash (可以通过"-comp "指定压缩方式)

b.擦除nand分区
#flash_eraseall /dev/mtdx(需要对字符设备的支持)

c.拷贝镜像
#dd if=xxxx.squash of=/dev/mtdx
注:文件系统知识一个文件的组织数据结构而已,将squash镜像全盘拷入到分区当中去就意味这创建了一个squash文件系统。

d.挂载设备
#mount -t squashfs /dev/mtdblockx /mnt/xxx(需要mtd块设备的支持)

由于对错误和过程没有完全记录,且对知识没有充分掌握,以致在次使用squashfs的时候仍有问题不能精确的定位,下面是补充:
在制作好squashfs之后,可以直接将文件系统挂载在某个目录下面:
#mount -t squashfs xxx.squash /dir/
接着得到如下打印:

can't setup loop device:no space left.

最后在制作squashfs的时候需要考虑版本的问题,如果提示版本的问题,需要换其他的版本,但是现在最新的squashfs工具已经没有这个问题了。


上面简单的介绍了下squashfs在nand当中的使用方式,望指正。

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