ramdisk文件系统制作

1.  确保内核支持ramdisk启动。
2.  创建根文件系统(应用busybox或拷贝现有文件系统)。
3.  利用脚本mkroot.sh创建内核镜像:root.img.gz。
4.  uboot通过tftp下载root.img.gz到板卡内存中。
5.  设置启动参数后,boot即可。

--------------------------------------------------------------------------
tftp 0x21100000 rootfs.img.gz
setenv bootargs mem=64M console=ttyS0,115200 initrd=0x21100000,0x21fc74 root=/dev/ram0 rw init=/linuxrc

--------------------------------------------------------------------------

配置内核   
  首先解压内核到工作目录,然后进入内核目录,执行如下语句。
  #sudo su
  #make menuconfig       (如ubuntu下的用户不能执行该命令则先执行如下命令 sudo apt-get install libncurses5-dev)
    General setup-->[*] Initial RAM filesystem and RAM disk support
                -->    [*]Optimize for size
    Device Drivers-->Block devices--><*>RAM block device support
   (4096)Default RAM disk size (kbytes)                   //如果你之前制作的ramdisk是8192kb的,则写成8192
    File system --> <*> Second extended fs support  //提供内核对ext2文件系统的支持
        退出保存配置。

--------------------------------------------------------------------------

ramdisk制作脚本

#!/bin/sh
umount ./mnt
test -e ./mnt  || mkdir ./mnt>/dev/null
dd if=/dev/zero of=rootfs.img bs=1024 count=8192
losetup /dev/loop1 rootfs.img
echo y | mke2fs -m0 rootfs.img
sudo mount -o loop rootfs.img ./mnt
echo "create the rootfs.img.gz"
sudo cp nfs/* ./mnt -a
sync
sudo umount ./mnt
gzip rootfs.img -v9

原文地址:https://www.cnblogs.com/embedded-linux/p/4823864.html