3.根文件系统的制作

            根文件系统的制作

  嵌入式系统包含多个文件系统但是第一个(根文件系统)是必须的。

一、创建目录

  # mkdir rootfs
  # cd rootfs
  # mkdir bin dev etc lib proc sbin sys usr mnt tmp var
  # mkdir usr/bin usr/lib usr/sbin lib/modules

二、创建设备文件
  # cd rootfs/dev
  # mknod -m 666 console c 5 1
  # mknod -m 666 null c 1 3

其中:

  console是设备的名字

  c指的是字符设备

  5指的是该设备在major.c中定义的标记

  1指的是第一个设备

三、加入配制文件

  这里是国嵌提供的配置文件,复制到linux下面解压,并且将全部内容复制到新建的rootfs文件系统目录下面

  # tar  xvzf  etc.tar.gz
  # mv  xvzf  etc/* …/rootfs/etc/ -rf

四、添加内核模块

4.1进入内核文件目录

  #cd  .../linux

4.2编译内核模块

  #make modules ARCH=arm CROSS_COMPILE=arm-linux-

  

4.3将内核模块安装到新建的文件系统下面

执行:

   #make modules_install ARCH=arm INSTALL_MOD_PATH=/home/rootfs

安装成功如下:

五、编译安装busybox

  BusyBox 是一个集成了一百多个最常用linux命令和工具的软件。BusyBox 包含了一些简单的工具,例如ls、cat和echo等等,还包含了一些更大、更复杂的工具,例grep、find、mount以及telnet。有些人将 BusyBox 称为 Linux 工具里的瑞士军刀。简单的说BusyBox就好像是个大工具箱,它集成压缩了 Linux 的许多工具和命令,也包含了 Android 系统的自带的shell。

5.1配置busybox

  这里的busybox是由国嵌视频中提供的

  

  #make  menuconfig  ARCH=arm

进入Busybox Setting -->

  1.进入Bulid  Options-->

    选中Build busybox as a static binary 静态链接

    Cross Compiler prefix(arm-linux-)

    

  2.进入Installation Options-->

    选中Don,t use /usr  选中该项可以避免busybox白安庄到宿主系统的/usr目录下,破坏宿主系统

    Busybox Installation Prefix (/xxx/rootfs)该选项表明编译后的busybox的安装位置

5.2编译安装busybox

执行:make

  

执行:make  install   进行安装

 

posted @ 2016-03-26 18:08  for_learning  阅读(183)  评论(0编辑  收藏  举报