大家好,关于飞灵课堂丨利用busybox搭建最小根文件系统很多朋友都还不太明白,今天小编就来为大家分享关于的知识,希望对各位有所帮助!
废话不多说,我们直接进入正题吧!
忙碌盒构建
首先我们需要下载busybox的源码包,可以到官网www.busybox.net下载
busybox菜单的配置及其编译
执行make menuconfig,出现busybox配置界面。 Busybox编译配置和Linux内核编译配置使用的命令是相同的。
执行make编译
Busybox配置完成后,我们开始编译Busybox,执行make命令开始编译Busybox。由于使用的交叉编译工具链版本不同,部分版本可能会出现编译错误。如果没有错误,就可以进行下一步的安装。
安装makeinstall
编译完成后,接下来我们需要将编译生成的“二进制文件”安装到“./system”目录中。要将二进制文件安装到“./system”目录中,输入命令“make install”进入“./system”目录。/system”目录下,可以看到安装的文件。
建立文件系统相关文件
进入ubuntu的根目录,可以看到ubuntu的文件系统,执行ls可以看到:
其实它们的每一个文件都有一些特殊的用途,所以如果我们想要制作一个文件系统,我们还需要其中必要的文件夹或者文件。接下来,我们将手动创建这些文件夹或文件。
创建etc目录
/etc放置一些配置文件,其不同的子文件夹包含不同功能的配置函数。
创建etc/inittab文件
修改的内容可以是:
/etc/inittab
:sysinit:/etc/init.d/rcS
:askfirst:-/bin/sh
# 重启前要做的事情
:ctrlaltdel:/sbin/重新启动
:shutdown:/bin/umount -a -r
创建etc/init.d/rcS文件
同样,参考busybox源码包中的examples/bootfloppy/etc/init.d/rcS文件。
内容定义为:
#!/bin/sh
挂载-a
mkdir /dev/pts
挂载-t devpts /dev/pts
回声/sbin/mdev /proc/sys/kernel/hotplug
mdev -s
创建dev设备文件
使用mdev 创建设备文件。 doc/medv.txt 中解释了medv 的用法。
创建其他目录
mkdir proc/mnt/tmp/sys/root/
文件系统的挂载
为了保证文件系统能够正确挂载,必须将服务器设置为允许挂载文件系统。为此,您首先需要设置服务器的/etc/exports 的内容,并将:/work/添加到exports 文件中。根*(rw,同步,no_root_squash)。然后重启nfs服务器
假设nand已经烧写了文件系统,并且已经进入文件系统,那么主要可以使用mount命令来挂载nfs。在单板文件系统下创建mnt文件夹mkdir /mnt,然后mount t nfs o nolock 192.168 .1.110:/work/root/mnt。设置完成后,然后保存。
原创文章,作者:小su,如若转载,请注明出处:https://www.sudun.com/ask/146316.html
用户评论
一生只盼一人
终于找到了这么详细的文章!我一直想自己动手弄一个最小化的根文件系统,但总觉得太复杂了。这篇博文讲解的思路清晰,步骤易懂,而且还配的有图解,真是太棒了!感觉可以用这个方法来学习更加深入的 Linux 系统构建知识。
有16位网友表示赞同!
昂贵的背影
这篇文章写得真好!我之前用 BusyBox 构建过简单的根文件系统,但从未想过能像这样精细化控制每个包。这个“最小”的概念特别吸引我,打算试着跟着这篇教程搭建一个更小的镜像来学习,看看能不能做得更轻量级。
有8位网友表示赞同!
太易動情也是罪名
我觉得这篇文章的标题有点夸张了。虽说可以构建出一个非常小的根文件系统,但这样做的实际应用场景有限吧?总感觉有些实用意义不太大。 不过还是学习了一下 BusyBox 的用法,感觉这个工具挺有意思的。
有20位网友表示赞同!
非想
<p>我也是喜欢轻量化解决方案的人,这篇博客介绍的方式很不错啊!可以把 BusyBox 用来构建一个最小化的系统,而且还解释了为什么我们需要这样做以及如何选择合适的工具和配置文件。我打算用这篇文章做为参考,尝试在嵌入式项目中应用一下。
有18位网友表示赞同!
ˉ夨落旳尐孩。
对Linux 系统内部结构一直很感兴趣,这篇博客刚好满足了我的需求!通过构建最小根文件系统,我们可以更加清楚地了解各个系统组件的功能。虽然我目前还不会动手操作,但这篇文章的讲解还是非常清晰的,很有帮助。
有17位网友表示赞同!
浮世繁华
感觉这个项目比较偏入门级吧?对于想深入理解 Linux 架构的人来说,可能有点不够深入。如果能加入更多实战应用场景的分析,会更吸引读者。
有17位网友表示赞同!
惯例
博客写的真好!用词准确易懂,而且图解很清晰。我之前对 BusyBox 了解不多,通过这个教程基本掌握了它的使用方法。现在可以尝试自己动手搭建一个最小根文件系统啦!
有17位网友表示赞同!
等量代换
我试着按照这篇博文来构建一个最小根文件系统,但是发现有些步骤并不容易理解。文章中对于一些命令的解释也比较笼统,缺少一些具体的示例或者调试方法,希望作者能补充完善一下。
有5位网友表示赞同!
在哪跌倒こ就在哪躺下
飞凌课堂的文章一直做得不错!这篇博客介绍得非常详细,而且能够引导读者一步步完成构建过程。对 Linux 系统有一定基础的人来说,这本书应该会很实用。
有11位网友表示赞同!
聽風
总觉得标题有点水分吧?最小根文件系统?我觉得还是挺大的啊…不过写得确实比较清晰,学习BusyBox也有一定的帮助。但是对于嵌入式项目来说,这样的操作复杂度还是挺高的。
有13位网友表示赞同!
花海
我一直在寻找构建 Linux 系统的教程,这篇博客刚好满足我的需求!虽然有点难度,但我相信只要跟着步骤不断练习,一定能够掌握这个技能。这篇文章不仅教会了方法,还让我对 BusyBox 有了一个全新的认识。
有15位网友表示赞同!
闲肆
很有用啊,我一直想了解一下BusyBox如何工作,这篇博文正好解释的很清楚。感觉以后还可以利用它来快速搭建一些小型的服务器系统。当然,像这种最小化的根文件系统,实用场景可能有限,主要是学习linux系统构架的帮助更大。
有9位网友表示赞同!
挽手余生ら
博客写的非常细节,每个步骤都进行了详细描述,即使是初学者也能理解。我打算按照这篇教程一步步完成我的第一个最小根文件系统,并尝试将其应用于一些小型嵌入式项目中。
有10位网友表示赞同!
←极§速
这篇文章让我重新认识到 Linux 的强大之处!通过构建最小根文件系统,我们可以看到它的每一层都经过精心的设计和调整。希望未来能学习更多关于 Linux 内存管理、进程调度等方面的知识,进一步深入理解它。
有8位网友表示赞同!
杰克
对于嵌入式开发者来说,这篇博文很有价值。 了解如何构建最小化的根文件系统 能够帮助我们在内存有限的设备上打造更轻便高效的系统。
有19位网友表示赞同!
执念,爱
这篇博客很好地解释了 BusyBox 在 Linux 系统中的作用和工作机制,同时还提供了详细的构建步骤,可以帮助读者深入理解Linux系统架构。
有17位网友表示赞同!