制作嵌入式busybox rootfs系统

1、busybox下载

BusyBox

此篇使用版本BusyBox 1.31.1 (stable)

2、设置交叉编译环境变量

source environment-setup-aarch64-poky-linux或者其他架构的编译链工具

3、busybox编译设置

cd busybox-1.31.1

修改根目录Makefile中的CROSS_COMPILE和ARCH参数

比如ARCH ?= arm64 

也可以在make menuconfig中的选项进行配置:

对如下进行配置:

Path to sysroot--->/home/rd/xxx_test/tool/sysroots/aarch64-poky-linux

Additional CFLAGS--->--sysroot=/home/rd/xxx_test/tool/sysroots/aarch64-poky-linux)

Additional LDFLAGS进行配置--->--sysroot=/home/rd/xxx_test/tool/sysroots/aarch64-poky-linux)

另外建议选择动态库编译,静态会导致占用空间大

4、编译

make ARCH=arm64 CROSS_COMPILE=arm-linux-gnueabihf-

5、安装

make CONFIG_PREFIX=./installed install //安装到指定目录 或者选择其他目录

6、生成产物

ls

bin  dev  etc  home  lib  linuxrc  mnt  opt  proc  root  sbin  sys  tmp  usr  var

注意: 在rootfs 上添加目录 dev etc home mnt opt proc root sys tmp var

fstab内容:

proc                 /proc                proc       defaults              0  0
devpts               /dev/pts             devpts     mode=0620,gid=5       0  0
tmpfs                /tmp                 tmpfs      defaults              0  0
sysfs                /sys                 sysfs      defaults              0  0
inittab内容:

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

ttySTM0::respawn:-/bin/ash

::restart:/sbin/init

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

或者

::sysinit:/etc/init.d/rcS
tty2::respawn:/bin/getty -L tty2 115200 vt100
console::askfirst:/bin/sh

profile内容:

export PS1="[\u@\h \W]# " if [ ! -z ${SSH_TTY} ]; then export PATH=/sbin:/usr/sbin:/bin:/usr/bin fi

group内容:

root:x:0:

passwd内容:

root:x:0:0:root:/root:/bin/sh

rcS内容:

echo "Starting rcS..."

echo "++ Mounting filesystem"
echo /sbin/mdev > /proc/sys/kernel/hotplug

也可参考如下:

#! /bin/sh
#
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin:
runlevel=S
prevlevel=N
umask 022
export PATH runlevel prevlevel
#Charactor modules
/bin/mknod /dev/pts/0 c 136 0
/bin/ln -s /dev/v4l/video0 /dev/video0
/bin/ln -s /dev/fb/0 /dev/fb0
/bin/ln -s /dev/vc/0 /dev/tty1
/bin/ln -s /dev/scsi/host0/bus0/target0/lun0/part1 /dev/sda1
/bin/mount -t proc none /proc
/bin/mount -t tmpfs none /tmp
/bin/mount -t tmpfs none /var
/bin/mkdir -p /var/lib
/bin/mkdir -p /var/run
/bin/mkdir -p /var/log
/sbin/ifconfig lo 127.0.0.1
/sbin/ifconfig eth0 192.168.0.111 up
/bin/hostname -F /etc/hostname

注:

一些情况需要先创建节点“console”、“null”。否则在系统启动时内容会提示以下错误:
Warning: unable to open an initial console.
Kernel panic - not syncing: Attempted to kill init!
创建节点的命令如下:
# mknod dev/console c 5 1
# mknod dev/null c 1 3

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/253948.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

玻璃制品行业丨外贸业务管理难点及解决方案

玻璃作为一种重要的建筑材料,在国际贸易中一直占有一定的份额。随着国外市场需求量的不断增加,对玻璃制品的技术含量要求越来越高,需要在研发方面的投入也逐步加大。由于国际市场竞争激烈,想要做玻璃制品行业的外贸公司&#xff0…

如何使用Python自动化测试工具Selenium进行网页自动化?

引言 Selenium是一个流行的Web自动化测试框架,它支持多种编程语言和浏览器,并提供了丰富的API和工具来模拟用户在浏览器中的行为。Selenium可以通过代码驱动浏览器自动化测试流程,包括页面导航、元素查找、数据填充、点击操作等。 与PyAuto…

华为网络设备查询系统时间及修改系统时间命令

查看当前系统时间 dis time all 手动修改系统时间clock datetime 14:25:00 2020-6-19

华为计算产品备件查询助手

华为计算产品备件查询助手 https://support-it.huawei.com/server-spareparts/#/spareparts

华为设备历史200条命令查询方法

有时配置误操作后又执行了很多新命令,需要复查或纠正时无法通过上下键直接翻到之前配置的命令,此时可以使用display history-command all-users 查询最近200条配置的命令,如下图所示:

Windows 查看是否激活

打开cmd 输入【slmgr.vbs /xpr】后按【回车键】 弹出如下对话框表示激活成功

如何查看电脑激活状态

** 如何查看电脑激活状态 ** 1 按下“winr”输入“slmgr.vbs -xpr” 2 点击“确定”。

查询office激活所剩时间

1.找到office安装的根目录 我的路径是C:\Program Files\Microsoft Office\Office16 2、在命令行输入cd C:\Program Files\Microsoft Office\Office16,回车 3、输入cscript ospp.vbs /dstatus,回车 这个时间就是激活剩余时间

华为官方解锁码申请

2019独角兽企业重金招聘Python工程师标准>>> 相关说明 • 本教程为华为解锁码申请教程,获取的解锁码用于刷机精灵刷机时弹出的解锁对话框里; 申请解锁码 • 点击进入 解锁页面 • 根据提示进行登录,没有帐号的请先进行注册&#x…

查看windows10是否永久激活

Windows10系统的功能十分强大,所以很多用户都开始体验这个系统。那么,我们在安装好Windows10系统后,该怎样查看系统是否激活了呢?是永久激活还只是180天的批量激活呢?下面,我为大家介绍一下查看Windows 10系…

iPhone如何查询序列号 iPhone激活时间查询

iPhone如何查询序列号 iPhone激活时间查询 在使用苹果产品的时候,往往需要查询产品激活时间,这就要查询iPhone序列号,那么iPhone如何查询序列号呢?今天小编就来介绍下,iPhone查询序列号的相关方法,希望给使…

华为9306 如何注册激活license 文件

S9300系列交换机作为华为主要运营商级、企业级核心、汇聚交换机,广泛应用在各行各业的不同环境下。但是作为重要功能的MPLS VPN、NQA和IPv6功能却需要单独申请许可,方能使用。 在不加载License的情况下,交换机基本功能可以正常使用。但是不支…

win10查看激活时间(Win10查看激活信息)

Win10系统如何批量激活查看天数? 方法一、 第一步、首先,我们可以从系统属性里直接找到。右击我的电脑选择属性。 第二步、拉到最下方,就可以看到Windows的激活选项。 方法二、 第一步、我们用命令直接读取。按下WInR,打开运行…

win10激活时间(win10激活时间查询)

怎么看windows10激活时间 查看方法: 1、首先打开Win10运行命令框,可以在开始菜单中找到,建议大家直接使用 Win R 组合快捷键打开; 2、打开运行命令框后,在打开后面键入或者粘贴上查看Win10激活命令:slmgr.…

Windows10 永久激活查询/激活时间查询/激活查询命令/激活码查询

1、使用 Windows R组合快捷键打开运行命令框 运行: slmgr.vbs -dlv 命令 可以查询到Win10的激活信息,包括:激活ID、安装ID、激活截止日期等信息。看不懂的继续往下。 2、运行: slmgr.vbs -dli 命令 可以查询到操作系统…

华为设备如何查看电源的序列号?

方式一&#xff1a;通过命令行查看电源模块的序列号 执行命令display elabel&#xff0c;根据命令提示&#xff0c;选择电源编号&#xff0c;可查看到如下电子标签信息&#xff0c;其中SN内容为电源模块序列号。 <HUAWEI> display elabel ?<1-1> The prese…

新买的华为Matebook,Office没激活,激活方法在这里!!!

二楼开始 看图说话 铁汁们看好了 新买了一台Matebook的笔记本&#xff0c;开机联网后Windows激活了&#xff0c;但是Microsoft Office 365无法激活&#xff0c;Office版本1803&#xff08;内部版本9126.2116&#xff09;——这个要不会看可用右键我的电脑高级设置属性看哦 需要…

华为设备如何查看整机的序列号?

方式一&#xff1a;通过命令行查看机框的序列号 非集群环境 执行命令display elabel backplane&#xff0c;可查看到如下电子标签信息&#xff0c;其中BarCode内容为机框序列号。不同版本命令格式可能略有差异&#xff0c;可通过输入“&#xff1f;”获取命令提示信息&#x…

C++ 常见集合算法

目录 &#x1f914;常见集合算法&#xff1a; &#x1f642;1.set_intersection 容器交集 代码示例&#xff1a; 运行结果&#xff1a; &#x1f642;2.set_union 容器并集 图解&#xff1a; 代码示例&#xff1a; 运行结果&#xff1a; &#x1f642; 3.set_differe…

价值5000元以上的某马大数据全套视频【强烈推荐】

某马大数据 01、阶段一 Python大数据开发基础 01、第一章大数据介绍及开发环境 02、第二章 linux命令 03、第三章 MySQL数据库 04、第四章 excel的使用 05、第五章 kettle的使用 06、第六章 数据分析及可视化 07、第七章 大数据框架与数仓基础 08、第八章 数仓实战项目 …