zoukankan      html  css  js  c++  java
  • 创建最小根文件系统

    开发板 : JZ2440

    Linux内核 : Linux-2.6.22.6

    Busybox1.29.3

    最小根文件系统所需的部分

    1./dev/console   /dev/null  :创建根文件系统所必备的,指出了所需要的标准输入,标准输出,标准错误设备终端。

    2.init 程序: 当busybox安装好时,init程序文件已有。

    3./etc/inittab: 

    4.配置文件指定的应用程序;

    5.c库

    一、编译安装busybox:生成init

      make menuconfig :创建一个.config的文件

      make  CROSS_COMPILE := arm-linux-

      make CONFIG_PREFIX=/path install :将busybox安装到指定的文件中;

      (不要直接make,避免对其他文件造成损坏,新建目录/work/nfs_root/first_fs,安装于此)

    安装完成后有  bin  linuxrc->bin/busybox   sbin  usr  目录

    二、创建/dev/console   /dev/null 

      查看设备文件中两个文件的相关信息,并以此创建

      crw

      c表示字符设备文件,b表示块设备文件,l表示符号链接文件,r表示可读权限,w表示可写权限。

      5, 1 与1, 3表示主从设备

      sudo mknod console c 5 1

      sudo mknod null c 1 3

    三、init程序已在busybox中建成

    四、创建/etc/inittab

      若不创建,则使用默认配置项

      /etc/inittab文件中的每一个条目用来定义一个子进程,并确定启动方法

      此处只添加console::askfirst:-bin/sh

    五、配置文件指定的应用程序;

      .现只做最小根文件系统,所以没有指定的用户程序

    六、C库

      glibc库所在的位置:/work/tools/gcc-3.4.5-glibc-2.3.6/arm-linux/lib

      进入目录看到主要的分类

      

      此处只需要用到动态库文件.so

      创建lib目录,并复制库文件

      cp *.so* /work/nfs_root/first_fs/lib/ -d

     (-d:当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录;)

    最小根文件系统

      

    如何将根文件系统烧写到储存设备上去?

      制作yaffs文件系统映像文件,见下节

    
    
    
  • 相关阅读:
    TIF转JPG
    跨线程取出控件的值的写法(不是跨线程赋予控件值)
    oracle根据正则表达式查找对应的字段
    oracle数据库连接字符串
    access检测表没有的字段,添加之
    解决 Unable to load DLL 'OraOps9.dll': 找不到指定的模块。 (Exception from HRESULT: 0x8007007E)
    oracle关键字使用
    to_number,Extract oracle的关键字
    OracleCommand.CommandText 无效
    调用带参数的线程两种方法
  • 原文地址:https://www.cnblogs.com/y4247464/p/10052868.html
Copyright © 2011-2022 走看看