平时使用 MacOS 比较多,因为最近在接触操作系统的知识,就想着用手头的设备编译下 Linux 内核。
本次实践仅作为 Linux 内核学习的入门练习。
以下是记录。
资源准备
下载 VirtualBox (用时 20min) VirtualBox6.1.16 platform packages :Downloads – Oracle VM VirtualBox[1]
下载 ubuntu 64 位系统(用时 60min) Ubuntu 20.04.1 LTS :Download Ubuntu Desktop | Download | Ubuntu[2]
下载 busyBox 源码
busyBox 源代码:Index of /downloads[3]
- 下载 Linux Kernel 源码
LinuxKernel 官方指定下载(国内慢):The Linux Kernel Archives[4]
推荐使用:Index of /kernel/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror[5]
- MacOS 建议使用 HomeBrew 安装 QEMU 工具
前期工作
- 在 macOS 安装 Virtual Box
- 用 VirtualBox 启动 Ubuntu 系统
- 给 Ubuntu 安装必要软件 QEMU,GCC 等
- 在 Ubuntu 中编译 LinuxKernel,busyBox。
- 在 Ubuntu 中创建镜像,完成文件系统。
- 在 Ubuntu 中用 QEMU 测试最终镜像。
- 将镜像复制到 MacOS 并使用 QEMU 运行即可。
粗略过程记录(非详细操作)
# create workspace 在mac上搞个工作文件夹出来
cd ~
mkdir xdev
cd xdev
# prepair files 准备这两个源码文件
# 这两条命令是将源码文件复制到xdev文件夹下
cp ../linux.tar.gz linux.tar.gz
cp ../busyb