首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

如何将Zynq-7000自带的ramdisk8M文件系统扩到ramdisk24M制作

如何将Zynq-7000自带的ramdisk8M文件系统扩到ramdisk24M制作

1.用dd命令制作镜像文件
使用dd软件制作镜像文件并将上述我们制作的rootfs_zed中的内容拷贝到镜像文件中,具体命令如下:
#sudo ----------切换到root模式下
#cd /home/filesystem ---------进入到filesystem目录
#dd if=/dev/zero of=ramdisk24M.image bs=1024 count=24576 -----此处设置为24M


dd命令的解释如下:
dd作用是用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换


主要选项:
if=file 输入文件名,默认为标准输入
of=file 输出文件名,默认为标准输出
ibs=bytes 一次读入bytes个字节(即一个块大小为bytes个字节)
obs=bytes 一次写入bytes个字节
bs=bytes 同时设置读和写的块大小为bytes
cbs=bytes 一次转换bytes个字节
skip=blocks 从输入文件开头跳过blocks个块后再开始复制
seek=blocks 从输出文件开头跳过blocks个块后再开始复制
count=blocks 仅仅拷贝blocks个块,块大小等于ibs指定的字节数


2.将镜像文件制作成ext2格式的文件系统
#mke2fs -F ramdisk24M.image -L "ramdisk" -b 1024 -m 0


mke2fs的命令解释如下:
一般用法:
mke2fs -F 设备 -L 标签名称 -m xx% -b 区块大小
-b<区块大小> 指定区块大小,单位为字节。
-c 检查是否有损坏的区块。
-f<不连续区段大小> 指定不连续区段的大小,单位为字节。
-F 不管指定的设备为何,强制执行mke2fs。
-i<字节> 指定"字节/inode"的比例。
-N 指定要建立的inode数目。
-l<文件> 从指定的文件中,读取文件西中损坏区块的信息。
-L<标签> 设置文件系统的标签名称。
-m<百分比值> 指定给管理员保留区块的比例,预设为5%。
-M 记录最后一次挂入的目录。
-q 执行时不显示任何信息。
-r 指定要建立的ext2文件系统版本。
-R=<区块数> 设置磁盘阵列参数。
-S 仅写入superblock与group descriptors,而不更改inode able inode
bitmap以及block bitmap。
-v 执行时显示详细信息。
-V 显示版本信息。


3. 使用tune2fs调整生成的文件系统的参数
# tune2fs ramdisk24M.image -i 0 --------不进行自检
tune2fs调整和查看ext2/ext3文件系统的文件系统参数
tune2fs -l 查看文件系统信息
-i 设置[d|m|w] 设置强制自检的时间间隔


4. 将以前自带的文件系统的内容拷贝到新生成的image文件中,这个就不详细解介绍了,


5. 可以参看我的另一篇博客(zynq开发中如何向文件系统里添加自己的程序)
http://blog.csdn.net/yhg20090519/article/details/52972108


6. 我们将文件系统扩容后,在启动过程中可能会报错,报错的原因是在内核配置里预留的
启动内存空间不够引起的,所以需要改内核的配置,从新编译,内核配置要改的地方如下:
# make ARCH=arm menuconfig
返回列表