No description
  • HTML 99.6%
  • CSS 0.2%
  • Python 0.1%
Find a file
2026-10-02 21:58:06 +08:00
delivery docs: migrate teaching materials to native Org and Babel tangle 2026-10-02 21:58:06 +08:00
docs docs: migrate teaching materials to native Org and Babel tangle 2026-10-02 21:58:06 +08:00
research docs: migrate teaching materials to native Org and Babel tangle 2026-10-02 21:58:06 +08:00
scripts docs: migrate teaching materials to native Org and Babel tangle 2026-10-02 21:58:06 +08:00
templates docs: migrate teaching materials to native Org and Babel tangle 2026-10-02 21:58:06 +08:00
.gitignore docs: migrate teaching materials to native Org and Babel tangle 2026-10-02 21:58:06 +08:00
LFS-中文教学手册.org docs: migrate teaching materials to native Org and Babel tangle 2026-10-02 21:58:06 +08:00
Linux-From-Scratch全项目中文教学手册.org docs: migrate teaching materials to native Org and Babel tangle 2026-10-02 21:58:06 +08:00
README.org docs: migrate teaching materials to native Org and Babel tangle 2026-10-02 21:58:06 +08:00
THIRD_PARTY_NOTICES.org docs: migrate teaching materials to native Org and Babel tangle 2026-10-02 21:58:06 +08:00

Linux From Scratch 全项目中文教学资料

这套教材覆盖 Linux From Scratch 官网首页列出的 10 个项目入口:LFS、BLFS、ALFS、MLFS、GLFS、SLFS、Hints、Patches、LFS Editor's Guide、Museum 。从系统原理、基础构建、应用扩展一直讲到自动化、补丁、文档维护与历史研究。

核对日期:2026-09-26。 构建书籍固定为 LFS/BLFS 13.1-systemd ,MLFS/GLFS/SLFS 13.1 ;jhalfs 与 LFS XML 另固定实际 Git 提交。此前的 LFS 教材保留为基础分册,本目录及新的全项目合订本是完整入口。

先从这里读

工作区另提供新版压缩包 delivery/Linux-From-Scratch-全项目中文教学资料.zip 及同名 .sha256 校验文件。解压后的根目录包含本导航、教材和离线资料,不递归包含交付 ZIP 本身。较早的 LFS-only 压缩包是历史交付,范围较小。

十个项目的教材入口

项目 学习与实践内容 章节
LFS 工具链自举、chroot、系统构建、内核、引导、网络与恢复 基础分册,下表列出分章
BLFS 依赖管理、证书、SSH、Git、Apache、PostgreSQL、Xorg/Xfce、音频 联网开发 · 服务器 · 桌面
ALFS jhalfs 固定输入、菜单配置、脚本审阅、自动构建和 BLFS 工具 自动化实验
MLFS 双 ABI、lib32、32/64 位编译与运行、内核兼容 多库工具链
GLFS 图形 API、Vulkan、Steam、Wine、MinGW、DXVK/VKD3D 图形与兼容实验
SLFS htop、中文输入、Flatpak、Hyprland、OBS 与模拟器选题 补充软件实验
Hints 资料适用性、历史内核 Hint 审阅、ELF 故障与技术写作 专题研究
Patches diff、路径裁剪、干运行、应用、行为测试和撤回 补丁实验
Editor's Guide DocBook XML、固定源码、结构验证、HTML 渲染和本地贡献材料 文档工程
Museum LFS/BLFS/ALFS 历史档案、旧新工具链和启动管理比较 版本研究

每个项目都提供教学活动;深度构建按目标分支。MLFS 是基础构建分支,不能简单当作装好普通 LFS 后的附加包。BLFS/GLFS/SLFS 按所选功能展开依赖,不按三本书首尾相接安装全部目录。

LFS 基础分章

文档 内容
00 课程设计 基础系统目标、先修能力与课时
01 系统原理 内核、ELF、链接、自举、chroot、启动链
02 实验环境 VM、宿主依赖、BIOS/GPT 主线、UEFI 分支
03 源码环境 版本、校验、目录、用户与日志
04 交叉工具链 第 5~6 章原理、构建与检查
05 chroot 挂载、临时系统、备份与恢复入口
06 最终系统 第 8 章依赖、关键测试、包管理
07 配置与启动 用户、网络、内核、fstab、GRUB
08 排障恢复 工具链、构建、断电与启动救援
09 基础教案 原有 LFS 专项教学与考核
10 基础来源 LFS 分册来源与维护
11 逐节操作清单 LFS 第 2~11 章 159 项进度清单

离线资料与来源

固定版官方书籍 本地入口 保存文件数
LFS 13.1-systemd 离线书籍 212
BLFS 13.1-systemd 离线书籍 886
MLFS 13.1 离线书籍 210
GLFS 13.1 离线书籍 206
SLFS 13.1 离线书籍 230

共 1,744 个官方书籍文件,包含页面、样式、图片与许可等;目录页数与归档文件数的统计口径不同。每本书的 download-manifest.json 记录 URL、大小与 SHA-256。浏览器直接打开本地首页即可阅读;原书的跨书和上游外链保持原样,断网时通过本资料的全项目索引切换到另一份本地书。

另外保存官网各项目入口、编辑者指南、Hints/Patches 示例和 Museum 选读页面;它们是教学快照,未镜像全部历史档案、Hint 库、补丁库或软件源码。附 jhalfs 源码、LFS r13.1 XML 源码及提交与哈希清单。解包得到固定源码快照,不含 Git 历史。

Org 阅读与维护

所有现行教材以 Org 为源格式。文件使用原生标题、表格、=file:= 链接、复选框、属性抽屉和有名称的 Babel 代码块;中文旁的标记保留空格,使 Emacs 默认配置也能正确识别。用 TAB 折叠章节、=C-c C-o= 打开链接、=C-c C-c= 更新复选框。

两份合订本以 #+INCLUDE 引用分章,正文只维护一份。在合订本里沿“原始分章”链接阅读,或用下面的导出命令生成展开全部内容的 HTML。分章标题和文件头变更后运行生成器,更新包含范围;官方索引也由同一命令从离线目录生成。

辅助工具的 Org 源文件 是 scripts/ 下 Python、Shell 和 Emacs Lisp 工具的维护入口。修改对应代码块后执行 tangle,生成的脚本随仓库分发,日常使用脚本无须先生成。校验器在临时目录中用 Org 真正 tangle,并逐字节比较结果,防止两份内容漂移。

# 依赖 Emacs(自带 Org)、Python 3 和 Bash;在仓库根目录执行。
emacs --batch -Q -l org --eval '(org-babel-tangle-file "scripts/工具集.org")'
python3 scripts/build-handbook.py
python3 scripts/check-materials.py
python3 scripts/check-coverage.py

# 在两份 Org 合订本旁生成 HTML,展开 INCLUDE,保留到 Org 分章的链接。
emacs --batch -Q -l scripts/org-tools.el -f lfs-org-export-handbooks

# 更新当前全项目 ZIP 和 SHA-256 校验文件。
python3 scripts/package-materials.py

教学代码块默认 :eval never :tangle no=,按各章的身份与前置条件手动执行。工具源文件只有明确声明 =:tangle 的代码块会输出脚本,tangle 过程不会运行脚本。Mermaid 图保留为具名源码块,可供支持 Mermaid 的阅读器使用;内置 HTML 导出显示图的源码,不依赖在线渲染服务。

实验模板提供 TODO 流程、属性和进度统计;复制到自己的实验目录后填写。全项目验收表支持 Org 列视图,每个项目分别记录状态、环境、证据和限制。迁移及复核情况见 Org 迁移验证记录。

实验使用方式

先读理论和前置条件,再执行当前阶段的命令。每段代码标明宿主、lfs 构建用户、chroot、目标普通用户或 root;不要把整份 Org 文档 当作脚本运行。目标系统默认不假定已安装 sudo。

基础主线为 x86_64、systemd、BIOS/GPT、独立虚拟磁盘、ext4 根分区、无独立 /boot 、无 initramfs、NAT 网卡;UEFI 单列替代方案。MLFS、自动化和图形扩展分别使用明确的 VM/快照分支。

中文教材给出理论、代表性完整实验、操作顺序、配置、验证和排障;大型软件的全部版本相关配方在对应固定版官方书籍中。执行一个软件包时,必须完成其页面要求的依赖、补丁、构建、测试、安装和后处理。

# 在资料根目录:检查中文文档链接、Shell 代码块和脚本语法。
python3 scripts/check-materials.py

# 核对十项目覆盖、固定链接、来源哈希及五本书的资源完整性。
python3 scripts/check-coverage.py

# 运行只写入新临时目录的原创补丁实验,需要 C 编译器等工具。
bash scripts/patch-lab.sh

# 宿主审计:检查工具并编译小程序,不安装软件。
bash scripts/host-audit.sh

# 在分章修改后重新生成索引和两份合订本。
python3 scripts/build-handbook.py

重新下载书籍时指定项目及一个新的输出目录;失败后对同一目录加 --complete ,先核对缓存哈希再补齐:

python3 scripts/fetch-book.py --book blfs --output research/blfs-fresh
python3 scripts/fetch-book.py --book blfs --output research/blfs-fresh --complete

--book 支持 lfs、blfs、mlfs、glfs、slfs。下载网页与下载构建所需源码是两件事。

模板:实验记录、构建台账、开课检查、跨项目依赖矩阵、十项目验收表、Hint、补丁评审。

当前交付是教材、离线参考资料与辅助工具。已验证内容见验证记录;没有在当前工作环境执行整机 LFS/MLFS 构建、安装服务器/桌面或进行真实 GPU/Wine/Steam 验收。教师应按所选路线完整预演。

本资料是中文教学补充,非官方翻译。重新分发须保留来源与许可说明及各原件许可。