msgid "" msgstr "" "X-Pootle-Revision: 9999999\n" "X-Pootle-Path: /zh_CN/lfs/chapter07/chroot.po\n" "Project-Id-Version: PACKAGE VERSION\n" "POT-Creation-Date: 2020-08-08 19:28+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "Language: zh_CN\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Translate Toolkit 2.2.5\n" #. type: Content of: msgid "Entering the Chroot Environment" msgstr "进入 Chroot 环境" #. type: Content of: <sect1><para> msgid "" "Now that all the packages which are required to build the rest of the needed " "tools are on the system, it is time to enter the chroot environment to " "finish installing the remaining temporary tools. This environment will be in " "use also for installing the final system. As user <systemitem class=" "\"username\">root</systemitem>, run the following command to enter the " "environment that is, at the moment, populated with only the temporary tools:" msgstr "" "现在已经准备好了所有继续构建其余工具时必要的软件包,可以进入 chroot 环境并完" "成剩余临时工具的安装。在安装最终的系统时,会继续使用这个 chroot 环境。以 " "<systemitem class=\"username\">root</systemitem> 用户身份,运行以下命令以进入" "当前只包含临时工具的 chroot 环境:" #. type: Content of: <sect1><screen> #, no-wrap msgid "" "<userinput>chroot \"$LFS\" /usr/bin/env -i \\\n" " HOME=/root \\\n" " TERM=\"$TERM\" \\\n" " PS1='(lfs chroot) \\u:\\w\\$ ' \\\n" " PATH=/bin:/usr/bin:/sbin:/usr/sbin \\\n" " /bin/bash --login +h</userinput>" msgstr "" "<userinput>chroot \"$LFS\" /usr/bin/env -i \\\n" " HOME=/root \\\n" " TERM=\"$TERM\" \\\n" " PS1='(lfs chroot) \\u:\\w\\$ ' \\\n" " PATH=/bin:/usr/bin:/sbin:/usr/sbin \\\n" " /bin/bash --login +h</userinput>" #. type: Content of: <sect1><para> msgid "" "The <parameter>-i</parameter> option given to the <command>env</command> " "command will clear all variables of the chroot environment. After that, only " "the <envar>HOME</envar>, <envar>TERM</envar>, <envar>PS1</envar>, and " "<envar>PATH</envar> variables are set again. The <parameter>TERM=$TERM</" "parameter> construct will set the <envar>TERM</envar> variable inside chroot " "to the same value as outside chroot. This variable is needed for programs " "like <command>vim</command> and <command>less</command> to operate " "properly. If other variables are desired, such as <envar>CFLAGS</envar> or " "<envar>CXXFLAGS</envar>, this is a good place to set them again." msgstr "" "通过传递 <parameter>-i</parameter> 选项给 <command>env</command> 命令,可以清" "除 chroot 环境中的所有环境变量。随后,只重新设定 <envar>HOME</envar>," "<envar>TERM</envar>,<envar>PS1</envar>,以及 <envar>PATH</envar> 变量。参数 " "<parameter>TERM=$TERM</parameter> 将 chroot 环境中的 <envar>TERM</envar> 变量" "设为和 chroot 环境外相同的值。一些程序需要这个变量才能正常工作,例如 " "<command>vim</command> 和 <command>less</command>。如果需要设定其他变量,例" "如 <envar>CFLAGS</envar> 或 <envar>CXXFLAGS</envar>,也可以在这里设定。" #. type: Content of: <sect1><para> msgid "" "From this point on, there is no need to use the <envar>LFS</envar> variable " "anymore because all work will be restricted to the LFS file system. This is " "because the Bash shell is told that <filename class=\"directory\">$LFS</" "filename> is now the root (<filename class=\"directory\">/</filename>) " "directory." msgstr "" "从现在开始,就不再需要使用 <envar>LFS</envar> 环境变量,因为所有工作都被局限" "在 LFS 文件系统内。这是由于 Bash 被告知 <filename class=\"directory\">$LFS</" "filename> 现在是根目录 (<filename class=\"directory\">/</filename>)。" #. type: Content of: <sect1><para> msgid "" "Notice that <filename class=\"directory\">/tools/bin</filename> is not in " "the <envar>PATH</envar>. This means that the cross toolchain will no longer " "be used in the chroot environment. This occurs when the shell does not " "<quote>remember</quote> the locations of executed binaries—for this " "reason, hashing is switched off by passing the <parameter>+h</parameter> " "option to <command>bash</command>." msgstr "" "注意 <filename class=\"directory\">/tools/bin</filename> 不在 <envar>PATH</" "envar> 中。这意味着交叉工具链在 chroot 环境中不被再使用。这还需要保证 shell " "不<quote>记忆</quote>执行过的程序的位置 —— 因此需要传递 <parameter>+h</" "parameter> 参数给 <command>bash</command> 以关闭散列功能。" #. type: Content of: <sect1><para> msgid "" "Note that the <command>bash</command> prompt will say <computeroutput>I have " "no name!</computeroutput> This is normal because the <filename>/etc/passwd</" "filename> file has not been created yet." msgstr "" "注意 <command>bash</command> 的提示符会包含 <computeroutput>I have no name!</" "computeroutput>。这是正常的,因为现在还没有创建 <filename>/etc/passwd</" "filename> 文件。" #. type: Content of: <sect1><note><para> msgid "" "It is important that all the commands throughout the remainder of this " "chapter and the following chapters are run from within the chroot " "environment. If you leave this environment for any reason (rebooting for " "example), ensure that the virtual kernel filesystems are mounted as " "explained in <xref linkend=\"ch-tools-bindmount\"/> and <xref linkend=\"ch-" "tools-kernfsmount\"/> and enter chroot again before continuing with the " "installation." msgstr "" "本章剩余部分和后续各章中的命令都要在 chroot 环境中运行。如果您因为一些原因 " "(如重新启动计算机) 离开了该环境,必须确认虚拟内核文件系统如<xref linkend=" "\"ch-tools-bindmount\"/>和<xref linkend=\"ch-tools-kernfsmount\"/>所述挂载" "好,然后重新进入 chroot 环境,才能继续安装 LFS。"