最近去香港澳门购物旅游,在闲暇时间抽空扫了一遍LFS,LFS(Linux From Scratch)就是从零开始构建一个linux系统,通过这个过程,了解一个系统是如何搭起来的。
LFS的过程做成了书籍,可以下载阅读。主要由准备编译环境,编译工具链,编译系统,配置系统这几个步骤组成。
首先需要有一个支持编译的类Unix宿主环境,创建编译目录和专门用来编译的用户,把系统需要的工具包下载下来。
然后是在宿主机上面创建编译工具链,首先用宿主机的编译系统编译gcc工具链,然后用gcc自己编译一遍gcc, 这样隔离宿主机编译系统的影响。
LFS提出了一个SBU(标准编译时间)的概念,每个工具包会列出SBU,让你知道编译这个工具包大概需要多少时间。
编译好gcc之后,用编译工具把linux需要的各种包,分门别类安装到目标文件系统中。
各种工具都安装好了,就开始进行系统的配置。设置磁盘的引导区指向到grub引导工具,然后用grub来加载linux内核。 设置udev设备管理器,设置fstab文件系统加载器,init进程启动器,shadow增加用户,网络等。
一切顺利之后,系统就可以启动使用了。我个人只是看了一遍,通过阅读来了解系统的架构。走一遍的话比较消耗时间,如果你时间充足,可以跟着做一下。