- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:19108035856(电话支持时间:9:00-19:00)。
创建文件系统和挂载文件系统流程
添加一个新的分区
通过分区工具添加分区 ==> 创建分区的文件系统 ==> 挂载文件系统
通过df -lh查看是否被挂载:
ex:
>> df -lh
Filesystem
Size
Used
Avail
Use%
Mounted on
/dev/sda7
21G
7.3G
12G
39%
/
/dev/sda10
98G
75G
18G
82%
/home
/dev/sda8
180M
109M
58M
66%
/boot
关于rootfs /dev/MKDEV.sh
/dev/MKDEV.sh to generate related device files in /dev automatically.
MKDEV.SH ==>
#!/bin/bash
#!/bin/bash
if [ `whoami` = “root” ]; then
sudo=
else
sudo=sudo
fi
$sudo mknod mtdblock0 b 31 0
$sudo mknod mtdblock1 b 31 1
$sudo mknod mtdblock2 b 31 2
$sudo mknod mtdblock3 b 31 3
$sudo mknod mtdblock4 b 31 4
$sudo mknod mtdblock5 b 31 5
$sudo mknod mtdblock0 b 31 6
Device files in /dev are created by MKDEV.sh in /dev directory:
sudo ./MKDEV.sh
UBIFS 文件系统简介
传统的flash文件系统如jffs2, yaffs2等是工作在MTD 设备上,而UBIFS则建立在UBI卷层之上,UBI卷层工作在MTD设备层之上,也可以说,UBIFS涉及三个子系统:
MTD 子系统,提供对flash芯片Raw的访问接口。MTD子系统提供了MTD device的概念,比如/dev/mtdX(字符设备)和/dev/mtdblockX(块设备);
UBI Subsystem, 它工作在MTD设备之上,提供了UBI逻辑卷,对上层屏蔽了一些直接使用MTD设备需要处理的问题,如wear-leveling(磨损平衡)和volume management(坏块管理)功能等;
UBIFS 文件系统,工作于UBI之上。它提供文件的open, read, write等操作;
根文件系统镜像文件制作
mkfs.ubifs 参数说明
-x lzo 指定使用lzo压缩方法,默认是lzo, 还支持zlib, zlib的压缩率高,但是lzo压缩解压速度快。
-m 2048 Nand Flash的最小读写单元,一般为page size.
-r ./rootfs 指定根文件系统目录树的路径
-o rootfs.ubifs 指定制作出的根文件系统镜像文件名
-e 126976 指定LEB(Logical Erase Block, 逻辑擦除块)大小。Nandflash 读写单位为页,擦除单位为块,以ESMT F59L1G81MB 为例:一个PEB(Physical EraseBlockSize, 物理擦除块)大小就是2048*64=131072,-e 的算法是物理擦除块大小-2*页大小,这里就是131072-2*2048=126976(注:这里的擦除块大小都不包含oob, 有包含子页和不包含子页之分。)
-c xxx 指定该分区最大逻辑擦除块数量,该值随着根文件系统分区的大小和该分区的坏块数调整。
ubinize 参数说明
-o rootfs-ubifs.bin 指定ubinize处理后输出的image文件名,该文件可以由u-boot的nand write命令直接烧录;
-m 2048 指定minimum input/output unit 大小,为Nandflash的页大小;
-p 131072 指定物理擦除块大小:64 Pages * 2048 Byte/Page = 131072(不包含oob的大小)
-s 512/2048 指定subszie大小,如果有sub, 则配置为512;如果没有sub,则配置为2048
关于配置文件说明:
image=rootfs-ubifs.img 指定mkfs.ubifs 制作成的根文件系统镜像文件路径;
vol_id=0 指定根文件系统树的卷标为0,u-boot的bootargs参数需要根据它来设置;
vol_size=xxx 指定该UBI逻辑卷的大小,该值计算公式一般为 逻辑擦除块大小*逻辑擦除块个数。该值一般不用写,默认值是image大小。写了这个作用是帮助检查image是否超过了分区限制,制作时候就会提
文档评论(0)