ramdisk根文件系统制作

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

制作根文件系统有两种方法

1、利用开发板提供的映像文件制作ramdisk

2、利用busybox制作根文件系统(制作过程复杂)

采用第一种方法制作需要的ramdisk

1、拷贝已有的uramdisk.image.gz 到新建的tmp/下,cp uramdisk.image.gz tmp/

2、去掉mkimage生成的64 bytes 的文件头,生成新的ramdisk.image.gz

$ dd if=uramdisk.image.gz of=ramdisk.image.gz bs=64 skip=1

3、 gunzip解压ramdisk.image.gz 生成ramdisk.image

$ gunzip ramdisk.image.gz

4、新建挂载目录“ramdisk”,并将ramdisk.image挂载

$ sudo mount -o loop,rwramdisk.imageramdisk

5、接下来,只需要将ramdisk目录下的内容全部拷贝到rootfs下即可

cp -R ramdisk /* rootfs

这样就有了自己的rootfs,省去利用busybox制作的麻烦了

有了制作好的rootfs,下面就开始制作映像文件了

1、创建镜像文件ramdisk8M.image,并设置大小为8M,文件系统格式为ext2

$dd if=/dev/zero of=ramdisk8M.image bs=1024 count=8192

$mke2fs -F ramdisk8M.image -L "ramdisk" -b 1024 -m 0

$tune2fs ramdisk8M.image -i 0

$chmod 777 ramdisk8M.image

大小可以按照需要自己调整,但是最好不要超过32M,创建ramdisk目录,将ramdisk8M.image 挂载到该目录下

$mkdirramdisk

$mount -o loop ramdisk8M.image ramdisk/

接下来,只需要将rootfs目录下的内容全部拷贝到ramdisk下即可

$cp -R rootfs/* ramdisk

注意,这里cp的参数一定是R而非r。

这样,这个镜像文件的内容就是rootfs目录下的内容了。将其卸载就可,

$umountramdisk/

到此,根文件系统镜像文件ramdisk8M.image 制作完成,将其压缩

gzip -9 ramdisk8M.image

用mkimage添加文件头,生成新的uramdisk.image.gz 供u-boot 使用

$ mkimage -A arm -T ramdisk -C gzip -n Ramdisk -d

ramdisk8M.image.gzuramdisk.image.gz

可以制作一个文件buildfs,如下

#dd if=/dev/zero of=ramdisk8M.image bs=1024 count=8192

dd if=/dev/zero of=ramdisk16M.image bs=1024 count=16384

mke2fs -F ramdisk16M.image -L "ramdisk" -b 1024 -m 0

tune2fs ramdisk16M.image -i 0

chmod 777 ramdisk16M.image

mkdirramdisk

mount -o loop ramdisk16M.image ramdisk/

cp -R rootfs/* ramdisk

umountramdisk/

gzip -9 ramdisk16M.image

mkimage -A arm -T ramdisk -C gzip -n Ramdisk -d ramdisk16M.image.gz uramdisk.image.gz

rm ramdisk16M.image.gz

rm -R ramdisk

相关文档
最新文档