跳转至

真正的开始#

Chapter 8 认真地重新阅读了一遍 LFS 手册后发现,原来第八章才是构建 LFS 真正的开始。

在第七章的结尾,我们得到了一个 LFS 工具的备份。这意味着,之后真正的构建可以从这个备份开始。于是,接下来我们重新梳理一下构建的准备工作:

在「宿主机软件准备」部分,挂载 $LFS 到新分区之后,将前面得到的 LFS 临时工具备份解压到 $LFS 下,再参照第七章结尾的「还原」进行操作即可。

准备工作:#

  1. 使用 Debian GUN/Linux 的 VirtualBox 镜像作为宿主机[^host];
  2. 宿主机硬件准备:
  3. CPU:四核
  4. 内存:4 GB
  5. 安装系统时留出 /dev/sda1 作为 LFS 系统所在分区,临时系统安装在其它分区,如 /dev/sda2
  6. 将所有硬盘设置为 SSD 模式
  7. 宿主机软件准备:
    • 镜像源:USTC
    • 安装宿主系统时手动为新分区创建文件系统,并在开机后挂载 $LFS 到新分区
    • LFS 编译工具备份包打包下载后通过临时目录解压到 $LFS/sources
  8. 进入 chroot 环境,开始编译

[^host]: 安装宿主机系统时在分区的步骤里,注意留出空白分区,以便之后安装 LFS

编译完 LFS 之后#

按照 LFS 手册,最终编译完成后,将会得到一个可运行的 LFS 系统。为了得到更好的体验,强烈建议在重启之前完成如下操作:

  1. 网卡配置(systemd-network)重要!
  2. /etc/fstab 配置
  3. /boot/grub/grub.cfg 配置
  4. 创建新用户 lfs,并为各个用户(root, lfs)设置相应的密码;
  5. 安装几个必备工具:
  6. OpenSSH
  7. Tmux
  8. sudo
  9. wget / curl (下载工具)

TODO:

  1. systemd-networkd 两张网卡,如何设置默认路由?

    答:将 HostOnly 的网卡配置中的 Gateway 注释即可,问题暂时解决,后续再深入研究

  2. wget / curl 无法正常使用 https 协议,p11-kit-0.24.1 ~~安装完成后无 trust 等程序~~(先编译 libtasn1-4.18.0 后问题解决,但 HTTPS 协议问题仍存在)。补记:此问题应该与 GnuTLS 有关,但安装后仍未解决。

  3. lightdm 启动失败。

意外的收获:

  1. PAM
  2. git
  3. neofetch
  4. htop

开始 BLFS 之旅#

  1. 安装 VirtualBox 增强功能(共享宿主机文件夹),依赖于:
  2. 桌面环境: Chapter 24. Graphical Environments: Setting up the Xorg Build Environment
  3. Linux API Headers:按 LFS 手册中的步骤编译内核

  4. 桌面环境:

  5. ~~lightdm~~ 醒悟了,其实暂时不需要这个……

  6. Xorg
  7. xinit 重点!

  8. 桌面应用:

  9. bspwm:桌面环境

  10. 浏览器:FireFox
  11. 输入法:Rime

  12. 日常使用:

  13. zsh