3.1. 简介

本章列出了一个需要下载的软件包列表,它们用来构建一个基本的 Linux 系统。所列出来的版本号对应着该软件的确定可以正常工作的版本,本书是以它们为基础的。我们强烈反对使用更新一些的版本,因为某个版本能用的编译指令可能并不适用于新版本。最新的软件包也可能会有问题而需要做些修补。我们会在本书的开发版本中解决这些问题并固定下来。

下载位置可能不会一直有效。如果在本书发布后下载位置变了,Google(http://www.google.com/)提供的搜索引擎可以找到大多数软件包。如果搜不到,试试这里 http://www.linuxfromscratch.org/lfs/packages.html#packages 提到的其他下载地址。

下载好的软件包和补丁需要保存在某个地方,以方便在整个构建过程中都能有效访问。另外还需要一个工作目录用于解压源代码并执行编译。可以用目录 $LFS/sources 保存软件包和补丁,同时作为工作目录。放到这个目录,所有需要的元素都在 LFS 分区中,因此在构建过程中的所有阶段都可以访问。

在开始下载任务之前,先用 root 用户执行下面的命令创建这个目录:

mkdir -v $LFS/sources

设置目录的写权限和粘滞模式。粘滞模式意思是就算有多个用户对某个目录有写权限,仍然只有该文件的主人能删除一个粘滞目录里的文件。下面的命令可以打开写权限和粘滞模式:

chmod -v a+wt $LFS/sources

下载所有软件包和补丁的一个简单方式是使用 wget-list 作为 wget 的输入。例如:

wget --input-file=wget-list --continue --directory-prefix=$LFS/sources

(LCTT 译注:由于这些文件都分布在国外的不同站点上,因此有些会下载很慢。感谢中科大提供的镜像:wget-list-LFS7.7-systemd-USTC,感谢 Love-xuan 提供本文件。)

另外,从 LFS-7.0 开始,多了一个单独的文件 md5sums ,可以在正式开始前校验所有的文件是否都正确。将这个文件拷贝到 $LFS/sources 目录里并执行:

pushd $LFS/sources
md5sum -c md5sums
popd

(译者注:多数情况下校对会不成功,并不影响构建。)