i. 前言

自 1998 始,我逐渐从学习 Linux 到对其深入了解。仅仅是在我安装完我的第一个 Linux 发行版后,我便迅速地为 Linux 所蕴含的整套理念及其背后的哲学思想所着迷。

总是会有很多的方法来完成一个任务。这对 Linux 的发行版而言也是这样。这些年来,这么多的发行版层出不迭,有的还在,有的已经今非昔比,有的现在也只能在记忆中感怀。它们的行事风格大相径庭,以满足不同受众的需求。也正是因为如此之多不同的发行版想要到达的是同一个目标,我开始意识到自己可以不必在受限于别人做好的发行版。在开始探索 Linux 之前,我们只能忍受各种操作系统的问题,因为我们别无选择。无论你喜欢还是不喜欢,它就在那里。但 Linux 让你拥有了选择的可能。如果你有什么不喜欢的,你可以自由地,甚至倍受鼓舞地去改变它。

我尝试过很多发行版,但还是无法决定该用哪个。这些系统,从它们自身的角度来看,它们都是很棒的系统。这里也并不是在探讨对错问题,这只不过是个人习惯的问题。在各种可选项中,显然没有哪个单一的系统对我而言是完美的。于是我开始着手创建自己的 Linux 系统,以完全满足自己的喜好。

为了使系统真正地属于我,我毅然决定开始从源代码编译所有东西,而不是使用预编译好的二进制包。这个「完美」的 Linux 系统能够拥有不同系统的优点,而不会有它们与之俱来的不足。起初,这种想法让人想都不敢想,但我一直保持着可以构建出这样一个系统的信念。

在梳理了诸如循环依赖和编译错误之类的问题后,我最终构建出了一个订制的 Linux 系统。它运转自如,用起来与当时的那些 Linux 系统一样完美,但它是由我亲手打造的。能组装出这样一个系统让我很满意,而与之相比更棒的,恐怕唯有在软件的各个方面都亲历亲为了,不过这也可算是第二棒的事了。

当我将自己的目标和经验与 Linux 社区的其它成员分享时,引发了大家对这些想法的不断关注。很快人们就清楚地意识到,这样一个定制的 Linux 系统不仅仅可以满足用户的特定需求,还可为程序员和系统管理员提供一个理想的学习机会,以增强他们(原有)的 Linux 技能。出于这个被放大了的兴趣,Linux From Scratch 项目诞生了。

这本 Linux From Scratch 手册是该项目的重中之重。它为你提供了设计和构建自己的系统所需的背景知识和指令。虽然本手册给出了一个模板,一个最后能正常工作的系统,但你可以自由地改变指令以适应自身的需求,从某种程度上说,这是也本项目的一个重要部分。你仍然可以控制一切,我们只是在你起航之前助你一臂之力。

我衷心地希望你能享受构建属于自己的 Linux From Scratch 系统的过程,并对坐拥一个真正属于自己的系统所带来诸多好处能做到甘之如饴。

--
Gerard Beekmans
gerard@linuxfromscratch.org