当前位置: 智能网 > 人工智能 > 一文了解如何制作rootfs?

一文了解如何制作rootfs?

放大字体 缩小字体 发布日期:2021-04-26 16:02:34   浏览次数:234


五、制作ramdisk文件系统

通过NFS测试以后,就可以制作ramdisk文件系统了,具体如下:

1、制作一个大小为8M的镜像文件 $ cd  ~

$ dd  if=/dev/zero  of=ramdisk  bs=1k  count=8192 (ramdsik为8M)

If: input file

Of: output file

2、格式化这个镜像文件为ext2$ mkfs.ext2  -F  ramdisk

3、在mount下面创建initrd目录作为挂载点$ sudo  mkdir  /mnt/initrd

4、将这个磁盘镜像文件挂载到/mnt/initrd下

注意这里的ramdisk不能存放在rootfs目录中

$ sudo  mount  -t  ext2   ramdisk  /mnt/initrd
5、将测试好的文件系统里的内容全部拷贝到 /mnt/initrd目录下面$ sudo  cp  /source/rootfs   /mnt/initrd  –a

如果拷贝遇到错误,需要再次删除不需要的库,比如c++库

6、卸载/mnt/initrd$ sudo  umount  /mnt/initrd

7、压缩ramdisk为ramdisk.gz$ gzip  --best  -c  ramdisk  >  ramdisk.gz

8、格式化为uboot识别的格式并拷贝到/tftpboot下$ mkimage -n "ramdisk" -A arm -O linux -T ramdisk -C gzip  -d ramdisk.gz  ramdisk.img
$ cp  ramdisk.img  /tftpboot

9、配置内核支持RAMDISK

制作完 initrd.img.gz后,需要配置内核支持RAMDISK作为启动文件系统

make menuconfig
File systems  --->
 <*> Second extended fs support
Device Drivers
 SCSI device support  --->
  <*> SCSI disk support
 Block devices  --->
  <*>RAM  block  device  support  
  (16)Default number of RAM disks  
  (8192) Default RAM disk size (kbytes)   (修改为8M)
General setup  --->
 [*] Initial RAM filesystem and RAM disk (initramfs/initrd) support

重新编译内核,复制到/tftpboot

10、在U-BOOT命令行重新设置启动参数:# setenv bootcmd tftp 41000000 uImage;tftp 42000000 exynos4412-fs4412.dtb;tftp 43000000  ramdisk.img;bootm 41000000 43000000 42000000
# saveenv

重新启动开发板查看能否正常启动

【注意】因为各个开发板命令会有所差异,uboot命令的设置要厂家出厂的手册操作。

<上一页  3  4  
 
关键词: 文件 目录 内核

[ 智能网搜索 ]  [ 打印本文 ]  [ 违规举报

猜你喜欢

 
推荐图文
ITECH直流电源在人工智能领域的应用 基于朴素贝叶斯自动过滤垃圾广告
2020年是人工智能相关业务发展的重要一年 我国人工智能市场规模、行业短板、发展前景一览
推荐智能网
点击排行

 
 
新能源网 | 锂电网 | 智能网 | 环保设备网 | 联系方式