|
@@ -1,4 +1,4 @@
|
|
|
-<?xml version="1.0" encoding="ISO-8859-1"?>
|
|
|
+<?xml version="1.0" encoding="UTF-8"?>
|
|
|
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
|
|
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
|
|
<!ENTITY % general-entities SYSTEM "../general.ent">
|
|
@@ -8,9 +8,9 @@
|
|
|
<sect1 id="ch-partitioning-aboutlfs">
|
|
|
<?dbhtml filename="aboutlfs.html"?>
|
|
|
|
|
|
- <title>Setting The $LFS Variable</title>
|
|
|
+ <title>设置 $LFS 环境变量</title>
|
|
|
|
|
|
- <para>Throughout this book, the environment variable <envar>LFS</envar> will
|
|
|
+ <!--para>Throughout this book, the environment variable <envar>LFS</envar> will
|
|
|
be used several times. You should ensure that this variable is always defined
|
|
|
throughout the LFS build process. It should be set to the name of the
|
|
|
directory where you will be building your LFS system - we will use
|
|
@@ -18,49 +18,82 @@
|
|
|
directory choice is up to you. If you are building LFS on a separate
|
|
|
partition, this directory will be the mount point for the partition.
|
|
|
Choose a directory location and set the variable with the
|
|
|
- following command:</para>
|
|
|
+ following command:</para-->
|
|
|
+ <para>在本书中,我们经常使用环境变量 <envar>LFS</envar> 。您应该保证,
|
|
|
+ 在构建 LFS 的全过程中,该变量都被定义,且设置为您构建 LFS 使用的目录
|
|
|
+ - 我们使用 <filename class="directory">/mnt/lfs</filename> 作为例子,
|
|
|
+ 然而您可以选择其他目录。如果您在一个独立的分区上构建 LFS ,
|
|
|
+ 那么这个目录将成为该分区的挂载点。选择一个目录,
|
|
|
+ 然后用下列命令设置环境变量:</para>
|
|
|
|
|
|
<screen role="nodump"><userinput>export LFS=<replaceable>/mnt/lfs</replaceable></userinput></screen>
|
|
|
|
|
|
- <para>Having this variable set is beneficial in that commands such as
|
|
|
+ <!--para>Having this variable set is beneficial in that commands such as
|
|
|
<command>mkdir -v $LFS/tools</command> can be typed literally. The shell
|
|
|
will automatically replace <quote>$LFS</quote> with
|
|
|
<quote>/mnt/lfs</quote> (or whatever the variable was set to) when it
|
|
|
- processes the command line.</para>
|
|
|
+ processes the command line.</para-->
|
|
|
+ <para>设置该环境变量的好处是,我们可以直接输入书中的命令,例如
|
|
|
+ <command>mkdir -v $LFS/tools</command> 。
|
|
|
+ Shell 在解析命令时会自动把 <quote>$LFS</quote> 替换成
|
|
|
+ <quote>/mnt/lfs</quote>(或是您设置的其他值)。</para>
|
|
|
|
|
|
<caution>
|
|
|
- <para>Do not forget to check that <envar>LFS</envar> is set whenever
|
|
|
+ <!--para>Do not forget to check that <envar>LFS</envar> is set whenever
|
|
|
you leave and reenter the current working environment (such as when doing a
|
|
|
<command>su</command> to <systemitem class="username">root</systemitem> or
|
|
|
another user). Check that the <envar>LFS</envar> variable is set up
|
|
|
- properly with:</para>
|
|
|
+ properly with:</para-->
|
|
|
+ <para> 如果您离开又重新进入了工作环境 (例如使用 <command>su</command>
|
|
|
+ 切换到 <systemitem class="username">root</systemitem> 或者其他用户),
|
|
|
+ 请执行下列命令,检查 <envar>LFS</envar> 的设置是否正确:</para>
|
|
|
|
|
|
<screen role="nodump"><userinput>echo $LFS</userinput></screen>
|
|
|
|
|
|
- <para>Make sure the output shows the path to your LFS system's build
|
|
|
+ <!--para>Make sure the output shows the path to your LFS system's build
|
|
|
location, which is <filename class="directory">/mnt/lfs</filename> if the
|
|
|
provided example was followed. If the output is incorrect, use the command
|
|
|
given earlier on this page to set <envar>$LFS</envar> to the correct
|
|
|
- directory name.</para>
|
|
|
+ directory name.</para-->
|
|
|
+ <para> 确认该命令的输出是您构建 LFS 的位置,如果您使用本书提供的例子,
|
|
|
+ 那么输出应该是 <filename class="directory">/mnt/lfs</filename>。
|
|
|
+ 如果输出不正确,使用前文给出的命令,将 <envar>$LFS</envar>
|
|
|
+ 设置成正确的目录名。</para>
|
|
|
</caution>
|
|
|
|
|
|
- <note><para>One way to ensure that the <envar>LFS</envar> variable is always
|
|
|
+ <note><!--para>One way to ensure that the <envar>LFS</envar> variable is always
|
|
|
set is to edit the <filename>.bash_profile</filename> file in both your
|
|
|
personal home directory and in <filename>/root/.bash_profile</filename> and
|
|
|
enter the export command above. In addition, the shell specified in the
|
|
|
<filename>/etc/passwd</filename> file for all users that need the
|
|
|
<envar>LFS</envar> variable needs to be bash to ensure that the
|
|
|
<filename>/root/.bash_profile</filename> file is incorporated as a part of
|
|
|
- the login process.</para>
|
|
|
+ the login process.</para-->
|
|
|
+ <para>确保 <envar>LFS</envar> 始终正确的一种方法是编辑您的主目录中的
|
|
|
+ <filename>.bash_profile</filename> 以及
|
|
|
+ <systemitem class="username">root</systemitem> 用户的
|
|
|
+ <filename>/root/.bash_profile</filename>,为它们加入上述设置并导出
|
|
|
+ <envar>LFS</envar> 变量的 <command>export</command> 命令。另外,确认
|
|
|
+ <filename>/etc/passwd</filename> 中给出的每个登录用户使用的 shell
|
|
|
+ 都是 bash,以保证每次登录时都执行 <filename>.bash_profile</filename>
|
|
|
+ 中的命令。</para>
|
|
|
|
|
|
- <para>Another consideration is the method that is used to log into the
|
|
|
+ <!--para>Another consideration is the method that is used to log into the
|
|
|
host system. If logging in through a graphical display manager, the
|
|
|
user's <filename>.bash_profile</filename> is not normally used when
|
|
|
a virtual terminal is started. In this case, add the export command to
|
|
|
the <filename>.bashrc</filename> file for the user and root. In addition,
|
|
|
some distributions have instructions to not run the <filename>.bashrc</filename>
|
|
|
instructions in a non-interactive bash invocation. Be sure to add the
|
|
|
- export command before the test for non-interactive use.</para>
|
|
|
+ export command before the test for non-interactive use.</para-->
|
|
|
+ <para>另外还要考虑登录宿主系统的方式,如果您使用图形显示管理器登录,
|
|
|
+ 再启动虚拟终端,那么 <filename>.bash_profile</filename>
|
|
|
+ 一般不会被虚拟终端执行。此时,应该将 <command>export</command>
|
|
|
+ 命令加入到您使用的用户和
|
|
|
+ <systemitem class="username">root</systemitem> 的
|
|
|
+ <filename>.bashrc</filename> 中去。另外,如果以非交互模式启动 bash,
|
|
|
+ 有的发行版不会执行 <filename>.bashrc</filename> 中的指令。
|
|
|
+ 此时一定要在使用环境变量前添加 <command>export</command> 命令。</para>
|
|
|
|
|
|
</note>
|
|
|
|