飞凌课堂丨用busybox构建一个最小根文件系统

BusyBox是一个集成了三百多个最常用Linux命令和工具的软件。

BusyBox包含了一些简单的工具,例如ls、cat和echo等等,还包含了一些更大、更复杂的工具,例grep、find、mount以及telnet。有些人将BusyBox称为Linux工具里的瑞士刀。

言归正传,我们直接进入正题!

busybox构建

首先我们需要下载busybox的源码包,www.busybox.net官网可下载

1、busybox菜单的配置及其编译
执行make menuconfig,出现busybox的配置界面,Busybox的编译配置和Linux 内核编译配置使用的命令是一样的。

2、执行make编译
Busybox的配置完成后,接下来我们开始编译Busybox,执行make命令,开始编译Busybox。由于使用的交叉编译工具链的版本不同,有些版本可能会出现编译错误。如果没有提示错误,就可以进入下一步的安装啦。

3、安装make install

编译完成后,接下来我们需要把编译生成的“二进制文件”安装到“../system”目录里面,安装二进制文件到“../system”目录输入命令“make install”进入“../system”目录,可看到安装的文件。

4、建立文件系统相关文件
进入ubuntu的根目录,可以看到ubuntu的文件系统,执行ls可以看到:

实际上他们每个文件都有一些特殊性的用途,那么我们要制作一个文件系统也需要他们之中的必要文件夹或者文件,接下来我们将手动的去创建这些文件夹或者文件。

? 建立etc目录

/etc放置的是一些配置文件,其不同的子文件夹下是对于不同功能的配置功能。

① 建立etc/inittab文件

文件系统初始的配置文件,每次进入文件系统时读取该文件,执行该文件所规定的命令,这里只需要在win系统下打开busybox的源码包里的example/inittab的文件复制出来修改一下就可以。

修改内容为可为:

/etc/inittab

::sysinit:/etc/init.d/rcS

::askfirst:-/bin/sh

Stuff to do before rebooting

::ctrlaltdel:/sbin/reboot

::shutdown:/bin/umount -a -r

② 建立etc/init.d/rcS文件

同样的参考busybox的源码包里的examples/bootfloppy/etc/init.d/rcS文件

内容定义为:

#!/bin/sh

mount –a

mkdir /dev/pts

mount -t devpts /dev/pts

echo /sbin/mdev > /proc/sys/kernel/hotplug

mdev -s

? 建立dev设备文件

使用 mdev 建立设备文件,medv 的使用方法在 doc/medv.txt 上有说明。

? 建立其他目录

mkdir proc/ mnt/ tmp/ sys/ root/

5文件系统的挂载

① 为了确保文件系统可以正确的被挂载,必须设置允许服务器去挂载文件系统,为此,首先需要设置服务器的/etc/exports的内容,在exports文件里面加上:/work/root *(rw,sync,no_root_squash)。然后重启一下nfs服务器

② 假设nand已经烧写有文件系统平且已经进入文件系统主要在用mount命令挂载nfs就可以,在板子的文件系统下建立一个mnt的文件夹mkdir /mnt 然后mount –t nfs –o nolock 192.168.1.110:/work/root /mnt。然后save,设置完成后。

重启开发板就可以了。

原文链接:https://www.forlinx.com/article_view_269.html

原文地址:https://blog.51cto.com/14771158/2485223

时间: 2024-08-30 09:01:59

飞凌课堂丨用busybox构建一个最小根文件系统的相关文章

飞凌课堂丨揭开影响RS485通讯因素的面纱

很多客户反应485在实际应用中,会出现各种问题,而产生问题的原因往往是我们很容易忽视的点. 在实际应用中除了连接485两根差分线,会影响485通讯的原因还有几点,小编在下面文章中展开说明. 01 由于485信号使用的是一对差分信号,所以数据线最好由双绞线组成,并且在外面加上屏蔽层作为地线,将485网络中485设备连接起来,并且在一个点可靠接地. 02 485总线必须要接地.在很多技术文档中,都提到485总线必须要接地,但是没有详细的提出如何接地.严格的说,485总线必须要单点可靠接地.单点就是整

飞凌干货丨如何选择电源适配器

我们日常所使用到的消费类电子几乎都是将市电通过电源适配器转为直流电来给设备供电.作为硬件工程师,我们在设计产品时考虑得详细周到,例如静电防护.EMC电磁兼容性等等技术指标.但是你考虑到了电源适配器的技术规格了吗? 俗话说:打铁还需自身硬.在我们选购电源时不能贪图便宜,从而埋下安全隐患. 电源质量不好,不但会影响设备稳定工作,减少器件使用寿命,严重时可能烧毁芯片,造成不可估量的损失,所以说电源是最重要的配件也不为过. 除了我们平时经常关注的过流保护.短路保护.环境适应要求.使用寿命等标准,还有一些

飞凌嵌入式丨我们是如何解决TVS管使用错误的

背景 一位客户在我司购买的某核心板,自己设计的底板.但在设计好底板后,发现不能通过USB更新程序,用SD卡可以正常程序烧写.出现此问题后,客户将底板快递至飞凌嵌入式申请技术服务,经过工程师反复测试后,发现确实存在此问题. 在寻找问题原因的过程中,发现是客户原理图中的TVS管使用错误导致问题出现.下图为客户设计原理图: 跟客户沟通GND_ETH连接的机壳,打静电过程中干扰信号可以通过TVS泄放到GND_ETH. TVS二极管反应速度快,钳位电压精确,结电容低,较大电容的保护器件可导致数据信号波形恶

飞凌干货丨OK-xx18 Android实时时钟框架介绍

RTC(Real-TimeClock)实时时钟为操作系统提供了一个可靠的时间,并且在断电的情况下,RTC实时时钟也可以通过电池供电,一直运行下去.本文以OK-4418-C为例,介绍在Android实时时钟框架. 整体流程介绍由于实时时钟子系统,硬件抽象层.框架层.应用层的android开发包都已经做好,因此此接口的主要设计工作在于rx8010芯片的驱动的实现,包括芯片的初始化及配置时间,读取时间及接入实时时钟子系统等功能. 板子上电以后,内核驱动会初始化rtc芯片rx8010,并生成/dev/r

使用busybox构建根文件系统

当我们在Qemu上运行起来自己编译的内核之后,需要使用busybox构建一个文件系统,将此文件系统挂载上去就可以使用busybox提供的各种命令了. 1.编译安装busybox 源码下载地址:http://www.busybox.net/downloads/ 编译安装过程: tar jxvf busybox-1.23.1.tar.bz2 cd busybox-1.23.1 make menuconfig 选择静态编译 BusyboxSettings->Build options->Build

用Busybox构建Linux根文件系统(转载)

注:本文转载自http://blog.sina.com.cn/u/2478597014 用Busybox构建Linux根文件系统 (2015-07-05 14:25:02)   虚拟机:Virtual Box4.2.6 和VMware Workstation6.5.2(这两种虚拟机都成功实作过) 开发环境:Linux版本2.6.32,采用Ubuntu10.04 arm-linux-gcc版本:3.4.1 Busybox版本:1.7.0 开发板:飞凌嵌入式S3C2440 开发板linux内核版本:

Android TV开发总结(一)构建一个TV app前要知道的事儿

转载请把头部出处链接和尾部二维码一起转载,本文出自逆流的鱼yuiop:http://blog.csdn.net/hejjunlin/article/details/52792562 前言:近年来,智能电视的发展如火如荼,Googel 也在大力推进TV及穿带设备的发展,在互联网的风口,是猪也会飞,这句话并不是没有道理的.传统电视机厂商,基本都转型致力于智能电视的相关业务. 处理电视硬件 app上检查电视设备 处理不支持的硬件features Declaring hardware requireme

busybox构建根文件系统

busybox是一个复合了大量简易版linux工具的程序,嵌入式系统中使用它可以快速建立一个相对简易的根文件系统.1.下载busybox官网 www.busybox.net目前(2015.8.4)的最新稳定版为1.23.22.编译busybox编译busybox前,请安装好交叉工具链,比如我这里是omapl138的工具链,安装位置/opt/arm-linux-gcc/omapl138/bin/,因为编译器前缀和另外一个编译器的相同,每次使用前设置环境变量 PATH=$PATH:/opt/arm-

飞凌方案|基于i.MX8MM的数字IP网络广播系统

系统介绍:IP网络广播系统是完全不同于传统广播系统.调频寻址广播系统和数控广播系统的产品.因建立在通用网络平台上,并融入数字音频技术,多方面体现了显著的优越性:产品应用范围: 学校 .高速公路.宾馆大厦.商业连锁店.大中型企业 二.i.MX8MM实现?IP网络广播系统方案框图 i.MX8M Mini采用NXP四核64位处理器设计,主频最高1.8GHz,ARM Cortex-A53架构:2GB DDR4 RAM,8GB eMMC ROM,内部支持一个通用型Cortex?-M4 400 MHz内核处