Linux根文件之系统制作流程

20160316

如何制作最小根文件系统

 

1概述

如何制作一个最小的根文件系统,能让内核在该文件系统中运行?该文章是读《嵌入式Linux应用开发完全手册》韦东山 书籍简要总结。
    制作最小的根文件系统的主要分为五个部分:
    ① 编译Busybox得到常用命令与工具集(生成bin,sbin,usr,linuxrc);

② 构建etc目录(/etc/inittab,/etc/fstab,/etc/init.d/rcS等);
    ③ 构建dev目录(/dev/console,/dev/null等设备节点);
    ④ 构建lib目录(C库函数uclibc,glibc);
    ⑤ 创建其他空目录(/proc、/sys等目录),配置需求相关文件程序;

⑥ 制作根文件系统的镜像文件;


2构造bin/sbin/usr目录

2.1配置编译Busybox

#make defconfig   

#make menuconfig

Busybox Setting -->

Build Options -->

[*]Build BusyBox as a static binary (no shared libs)

/*选择busybox静态链接共享库,则lib目录不用建立即可执行/sbin/init */

(/usr/local/arm/4.3.2/bin/arm-linux-)Cross Compiler prefix

/*指定交叉编译器为*/

Installation Options  /*选择生成的文件存放目录*/

Busybox Library Tuning--->

    [*]Username completion

    [*]Fancy shell prompts

    [*]Query cursor position from terminal

/*编译出的busybox的shell命令解释器支持显示当前路径及主机信息*/

#make   

 

2.2安装Busybox

#make install

#cp  bin/ sbin/ usr/ linuxrc  / home/rootfs  -r

切记一定要带上-a的参数,因为bin目录里大部分都是链接,如果不带-a的参数,拷过去之后会做相应的复制,不再是链接的形式

查看busybox安装版本

root@am57xx-evm:/bin# busybox --help

BusyBox v1.23.1 (2016-01-28 14:01:20 EST) multi-call binary.

注】编译的时候如果遇到有错误的地方,可以根据提示进行修改,一般的情况下,是某个命令的配置上有错误,这个时候可以选择重新执行make menuconfig进行重新配置,去掉出错的命令,重新编译即可。也可以BusyBox 中添加自己编写的新命令

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值