亲自下厨,从零开始编译自己的 Linux 发行版, LFS 8.0 正式发布

By -

去年的9月8日发布 LFS 7.10之后,就在昨天,LFS 8.0 终于面世了。LFS 的全称是 Linux From Scratch,就像它的名字一样,这个发行版是一个教我们如何从零开始打造自己的 Linux 发行版的指南,同时还有姊妹发行版 BLFS,全称是 Beyond Linux From Scratch,昨天 BLFS 8.0 也一同发布了更新。准确地说,昨天 LFS 社区正式发布了 LFS Version 8.0, LFS Version 8.0 (systemd), BLFS Version 8.0, 和 BLFS Version 8.0 (systemd) 四个更新版本。

与其说 LFS 是一个发行版,它其实就是一本书,附赠的源代码,《Linux From Scratch》(LFS)是杰勒德·比克曼斯等人编写的久负盛名的安装Linux的教科书,描述了从源代码编译Linux系统的方法。这本书可以从在Linux From Scratch网站上免费下载到,下载链接如文末。书中详细地描述了如何从零开始构建一个完整的 Linux 系统,不过 LFS 包含的套件较少,一般来说 BLFS 提供的套件更多,其几个相关的子项目有如下这些:

  • Beyond Linux From Scratch(BLFS)
    标准LFS仅仅安装了足够让系统启动的基本软件,以及使新系统能够编译新软件包的开发工具。BLFS包括了更多的软件包,且都有相应指导。
  • Crosss Linux From Scratch(CLFS)
    为需要进行交叉编译(即在一个平台上编译另一个平台的代码)的用户提供指导,正式版本为1.0,另有两个变种

    1.CLFS Sysroot 采用Sysroot的方法来进行编译,好处是软件包的编译次数可以减少,坏处是不能支持在编译后对软件进行测试,必须要启动到目标平台上才能测试。
    2.CLFS Embedded 一般用于极小系统以及嵌入式系统。为此,它使用uclibc而不是一般LFS使用的glibc。

  • Automated Linux From Scratch(ALFS)
    标准LFS只是一本书,用户需要根据书上的指引下载软件包并手动输入指令进行编译。ALFS子项目提供了把这一切自动化的脚本。

  • Hardened Linux From Scratch(HLFS)
    这个子项目致力于打造在安全性上无懈可击的Linux系统。
  • Hints
    收集一些解释性、增强性的文档,以协助用户
  • LiveCD
    利用LFS的方法生成可以自行启动并安装了足够软件的CD,可以用来在空机器上安装LFS,或者直接在其上运行应用。
  • Patches
    由于软件之间的依赖关系,在升级软件包之后可能会导致LFS的过程出现故障。Patch项目致力于研究最新版本的软件之间的互动,并提供一些补丁修复这些故障。

这次发布的 LFS 和 BLFS 总共有29个包得到了更新,包括启动脚本和安装指南。而 BLFS 则跟上一个旧版本相比,有大概800个包得到了更新,主要更新包括:
* glibc-2.24
* binutils-2.27
* gcc-6.2.0
* /lib 移到了 /lib64
* 移除/usr/lib64 目录
* 增加 /usr/bin/ld.gold 可用

LFS 手册:
[0] http://www.linuxfromscratch.org/lfs/view/8.0/
[1] http://www.linuxfromscratch.org/blfs/view/8.0/
[2] http://www.linuxfromscratch.org/lfs/view/8.0-systemd/
[3] http://www.linuxfromscratch.org/blfs/view/8.0-systemd/

下载链接:
[4] http://www.linuxfromscratch.org/lfs/downloads/8.0/
[5] http://www.linuxfromscratch.org/blfs/downloads/8.0/
[6] http://www.linuxfromscratch.org/lfs/downloads/8.0-systemd/
[7] http://www.linuxfromscratch.org/blfs/downloads/8.0-systemd/

Linux Story 社区同时在招募 Linux From Scratch 8.0 手册翻译的志愿者,欢迎Linux爱好者和有兴趣的同学发送邮件到 ls##linuxstory.org 联系。(请将##改成@)

聞其詳,英文ID:bootingman,是“booting” 加上 “man”的一个合成词。 术语“booting(引导)”是“bootstrapping”的简写,描述计算机从零开始启动的过程,同时也表示一个古老的谚语“通过自力更生而出人头地“。 “引导”的思想在于一个困难的、复杂的目标可以通过一个小的动作开始,然后以这个小的动作为基础,一步一步地达到期望目标而完成。这也是我想做和正在做的。

发表评论

电子邮件地址不会被公开。