在本书中,我们经常使用环境变量 LFS
。您应该保证,在构建 LFS
的全过程中,该变量都被定义且设置为您构建 LFS 使用的目录 —— 我们使用 /mnt/lfs
作为例子,但您可以选择其他目录。如果您在一个独立的分区上构建
LFS,那么这个目录将成为该分区的挂载点。选择一个目录,然后用以下命令设置环境变量:
export LFS=/mnt/lfs
设置该环境变量的好处是,我们可以直接输入书中的命令,例如 mkdir -v $LFS/tools。Shell 在解析命令时会自动将 “$LFS” 替换成 “/mnt/lfs” (或是您设置的其他值)。
无论何时,如果您离开并重新进入了工作环境,一定要确认 LFS
的设定值和您离开工作环境时相同。(例如,使用 su 切换到 root
或者其他用户时。) 请执行以下命令,检查 LFS
的设置是否正确:
echo $LFS
确认该命令的输出是您构建 LFS 的位置,如果您使用本书提供的例子,那么输出应该是 /mnt/lfs
。如果输出不正确,使用前文给出的命令,将 $LFS
设置成正确的目录名。
确保 LFS
始终正确的一种方法是:编辑您的主目录中的 .bash_profile
,以及/root/.bash_profile
,为它们加入上述设置并导出 LFS 变量的 export
命令。还要确认 /etc/passwd
中为每个需要使用
LFS
变量的用户指定的 shell 都是 bash,以保证每次登录时都执行
.bash_profile
中的命令。
另外还要考虑登录宿主系统的方式,如果您使用图形显示管理器登录,再启动虚拟终端,那么 .bash_profile
一般不会被虚拟终端执行。此时,应该将 export
命令加入到您使用的用户和 root
用户的 .bashrc
文件中。另外,一些发行版的 .bashrc
中加入了检测交互性的命令,使其在非交互 bash
的启动过程中不执行其余命令。此时必须将 export 命令添加到交互性检测之前。