linux学习4,全靠它,三分钟把系统内核完全跑起来,busybox介绍

caocao1年前教程202

极客复述

下载和编译 Linux 内核源码

在第二节中,我们一起下载和编译了 Linux 内核源码,并使用 qemu 模拟运行了编译好的内核。然而,由于缺乏文件系统,内核在启动后期出现了“kernel panic”。因此,在上一节中,我们创建了 disk.img 文件作为“虚拟磁盘”,并将其格式化为 Linux 经典的 ext2 文件系统。

建立能够启动 Linux 内核的文件系统

尽管我们已经有了 ext2 文件系统的 disk.img “虚拟磁盘”,但其中是空的,没有基本目录如 binetcproc 等。因此,虽然解决了内核因缺少文件系统引起的“kernel panic”,但最终仍然报错。而且,我们自己编写的 init 程序并没有实际意义,因此 Linux 内核没有完全启动也是预料之中的。本节的目标是建立能够启动 Linux 内核的文件系统,即向 disk.img 中填充 Linux 启动所需的基本文件,包括真正的 init 程序。实现这个目标有多种方法,我们选择使用 BusyBox。

BusyBox 是一个开源项目,通常用于嵌入式等小型系统。除了 init 程序外,BusyBox 还包含许多常用的命令工具,如 lscat 等。BusyBox 非常轻量级,可以编译出完全独立无依赖的 BusyBox 套件。

下载和编译 BusyBox

要使用 BusyBox,第一步当然是下载它的源码。这里我们选择的是 BusyBox 的 1.27.2 版本。下载后,解压并按照默认配置进行编译。上述命令的意义在第一节已经介绍得很清楚。最后一条命令执行完毕后,会弹出图形配置界面,依次选择:

  • Busybox Settings -> Build Options -> Build BusyBox as a static binary (no shared libs)
  • 勾选这一项的原因是因为我们的磁盘镜像中没有任何其他库,所以 BusyBox 需要被静态编译成一个独立、无依赖的可执行文件,以免运行时发生链接错误。

然后进行编译,编译完成后,我们将 BusyBox 安装到新建的 install 目录下。

将 BusyBox 塞入虚拟磁盘

安装完成后,BusyBox 就被安装到 install 目录中。现在,我们将它们复制到 disk.img “虚拟磁盘”中。首先,将 disk.img 挂载到 rootfs,然后直接将编译好的 BusyBox 复制进去即可。现在,我们的虚拟磁盘越来越像 Linux 的文件系统了。init 是我们在上一节编写的应用程序,它不能用作启动 Linux。而 linuxrc 则是从 BusyBox 编译出的 init 程序,我们在使用 qemu 模拟运行 Linux 内核时,可以将 init 程序指定为 linuxrc。复制完 BusyBox 后,不要忘记卸载 disk.img,以刷新改动。

使用 qemu 模拟运行 Linux 内核

现在,让我们再次使用 qemu 模拟运行编译好的 Linux 内核和修改好的文件系统。这次终于没有报错了,提示我们按回车激活控制台。到这里,我们终于将 Linux 操作系统完全跑起来了,可以执行 Linux 的基本命令了。还记得 init 这个应用程序吗?现在它也可以正常执行了。

欢迎在评论区一起讨论和质疑。本文是原创手打,每天最浅显地介绍 C 语言、Linux 等嵌入式开发。如果喜欢我的文章,请关注,可以看到最新更新和之前的文章哦。

相关文章

wifi万能钥匙破解不了怎么办(WIFI万能钥匙解不开密码怎么办?来试试这个吧)

wifi万能钥匙破解不了怎么办(WIFI万能钥匙解不开密码怎么办?来试试这个吧)

在线wifi跑包 金刚包跑包 cap跑包 hccapx ewsa在线 就来 曹操wifi 各位好 又见面了 我是曹操 今天给大家带来一篇新的教程 希望各位细心学习 低调用网 阅读本文需要3分钟。上次...

破解版无限材料

在线wifi跑包 金刚包跑包 cap跑包 hccapx ewsa在线 就来 曹操wifi 各位好 又见面了 我是曹操 今天给大家带来一篇新的教程 希望各位细心学习 低调用网 为了适应公司新战略的发展...

用于黑客渗透测试的 21 个最佳 Kali Linux 工具

用于黑客渗透测试的 21 个最佳 Kali Linux 工具

最好的Kali Linux工具列表 这是一个关于Kali Linux工具的最佳列表,这些工具可以帮助你评估Web服务器的安全性,并进行黑客渗透测试。如果你对Kali Linux有所了解,你就会知道为什...

宇宙最强开源破解密码利器:Hashcat 第一篇

宇宙最强开源破解密码利器:Hashcat 第一篇

在线wifi跑包 金刚包跑包 cap跑包 hccapx ewsa在线 就来 曹操wifi 各位好 又见面了 我是曹操 今天给大家带来一篇新的教程 希望各位细心学习 低调用网 -a 指定要使用的破解...