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文件系统。

简单文件系统构建ramdisk的更多相关文章

  1. 制作嵌入式linux文件系统(ramdisk,cramfs,squashfs)

    转:http://blog.csdn.net/zyb19831212/article/details/1887930 一.什么是文件系统 (Filesystem): A directory struc ...

  2. .NET Core的文件系统[5]:扩展文件系统构建一个简易版“云盘”

    FileProvider构建了一个抽象文件系统,作为它的两个具体实现,PhysicalFileProvider和EmbeddedFileProvider则分别为我们构建了一个物理文件系统和程序集内嵌文 ...

  3. 嵌入式Linux内核+根文件系统构建工具-Buildroot 快速入手指导【转】

    本文转载自:https://my.oschina.net/freeblues/blog/596448 嵌入式Linux内核+根文件系统构建工具-Buildroot 快速入手指导 buildroot 是 ...

  4. 基于Linux的嵌入式文件系统构建与设计

    摘 要:Linux是当今一种十分流行的嵌入式操作系统.由于其具有执行效率高.占用空间小.实时性能优良和可扩展性强等特点,因此被广泛应用于工业控制领域.该文对其文件系统进行了简单的介绍,结合嵌入式系统应 ...

  5. 混合文件系统(ramdisk+jffs)

    背景知识: 一.Ramdisk文件系统: 1.掉电丢失 2.读写速度高 3.数据存储到内存 二.jffs文件系统 1.掉电不丢失 2.可存储于NOR NAND,但是适用于NOR 3.数据存储于flas ...

  6. 基于IndexedDB实现简单文件系统

    现在的indexedDB已经有几个成熟的库了,比如西面这几个,任何一个都是非常出色的. 用别人的东西好处是上手快,看文档就好,要是文档不太好,那就有点尴尬了. dexie.js :A Minimali ...

  7. ARM-Linux移植之(四)——根文件系统构建

    相关工具版本: busybox-1.7.0 arm-linux-4.3.2 linux-2.6.22   1.配置busybox并安装. 在我们的根文件系统中的/bin和/sbin目录下有各种命令的应 ...

  8. 如何简单的构建Android?

    原文链接:https://fernandocejas.com/2014/09/03/architecting-android-the-clean-way/   过去的几个月中,在Tuenti上与同行例 ...

  9. 就这么简单!构建强大的WebShell防护体系

    接触web安全中,例如上传一句话WebShell实现上传文件的功能,再通过上传的多功能WebShell,执行病毒文件最终创建远程连接账号,达到入侵目标服务器的效果.我们可以看到,webshell在整个 ...

随机推荐

  1. Linux目录结构及解释(附图)

    ___/bin (binary二进制) 常用Linux命令 ___/boot 存放着启动Linux时使用的一些核心文件,包括一些链接文件以及镜像文件 ___/cdrom 这个目录在你刚刚安装系统的时候 ...

  2. 使用select函数改进客户端/服务器端程序

    一.当我们使用单进程单连接且使用readline修改后的客户端程序,去连接使用readline修改后的服务器端程序,会出现一个有趣的现象,先来看输出: 先运行服务器端,再运行客户端, simba@ub ...

  3. SQL批量删除用户表(先删除所有外键约束,再删除所有表)

    --批量删除用户表 --1.删除外键约束DECLARE c1 cursor for     select 'alter table ['+ object_name(parent_obj) + '] d ...

  4. Unity3D中组件事件函数的运行顺序

    事件函数的运行顺序 Unity 脚本中有很多按预设顺序以脚本身份执行的事件函数. 其执行顺序例如以下: 载入第一个场景 启动场景时调用这些函数(为场景中的每一个对象调用一次). Awake: 始终在调 ...

  5. 本地服务器能ping通,但是ssh及各种端口都访问不到---待整理

    情况描述: 情况一:后来发现,开机需要很长一段时间之后才能正常的访问那台机器 原因:系统启动时加载的程序多,所以开机需要很长的时间,关掉不用的就可以了 情况二:服务器位于局域网内,有的时候可以访问到, ...

  6. WinForm中变Enter键为Tab键实现焦点转移的方法

    if (e.KeyCode == Keys.Enter) { //this.SelectNextControl(this.ActiveControl,true, true, true, true); ...

  7. Apache 隐藏 index.php,如将 tp5.com/index.php/hello/123 变成 tp5.com/hello/123

          以Apache为例,需要在index.php入口文件的同级添加.htaccess文件,内容如下: <IfModule mod_rewrite.c> Options +Follo ...

  8. ECSHOP后台权限分配原理分析

    1.在权限管理->管理员列表,中添加一名管理员 2.在admin\includes\inc_menu.php $modules['02_cat_and_goods']['01_goods_lis ...

  9. Linux下hosts、host.conf、resolv.conf的区别

    /etc/resolv.conf 该文件是DNS域名解析的配置文件,它的格式很简单,每行以一个关键字开头,后接配置参数.resolv.conf的关键字主要有四个,分别是:nameserver   #定 ...

  10. asp.net 通用的连接数据库实例代码

    asp.net中数据库连接代码,有需要的朋友可以参考一下. <%@ Page Language="C#" AutoEventWireup="true" C ...