zoukankan      html  css  js  c++  java
  • 简单文件系统构建ramdisk

    1.  BusyBox编译工具,包含bin, sbin, usr,  linuxrc.

    2.  添加相关重要目录:dev,  etc,  mnt, proc,  sys, lib, var, tmp.

         proc, sys为虚拟文件系统,在内存中,创建文件系统时,只要创建空目录即可。

    3.  dev中添加相关设备文件。

        mknod -m 666  ttyS0  c 4 64

        mknod -m 666 null     c  1 3

        mknod -m 666 console c 5 1

        mtd0  c  90 0

        mtd1  c 90 2

        mtd2  c 90 4

        mtdblock0 b 31 0

        mtdblock1 b 31 1

        telnet相关的文件:

        ptmx  c  5 2

        mkdir  dev/pts

    4.  etc目录文件:inittab, init.d/rcS, fstab, profile, group, shadow, passwd.

         制作,请参考rootfs下相关文档。

    5.  把相关内容保存到rootfs下,通过以下脚本生成rootfs.img.gz(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 rootfs/* ./mnt -a
    sync
    sudo umount ./mnt
    gzip rootfs.img -v9
    6.  通过uboot下载到内存中,并配置bootargs。

        以at91sam9260为例:

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

    7.  boot即可测试ramdisk文件系统。

  • 相关阅读:
    随机变量和期望
    lj的锁
    lyd的旅行
    sg函数和nim游戏的关系
    game with probability problem
    cf 853 B Jury Meeting [前缀和]
    cf 853 A planning [贪心]
    [ZJOI2015][bzoj3924] 幻想乡战略游戏 [动态点分治]
    [IOI2011] Race [点分治]
    [网络流24题] 星际转移问题
  • 原文地址:https://www.cnblogs.com/embedded-linux/p/4822120.html
Copyright © 2011-2022 走看看