|
@@ -5,25 +5,33 @@
|
|
|
%general-entities;
|
|
|
]>
|
|
|
|
|
|
-<sect1 id="ch-tools-introduction">
|
|
|
+<sect1 id="ch-tools-introduction-chroot">
|
|
|
<?dbhtml filename="introduction.html"?>
|
|
|
|
|
|
<title>Introduction</title>
|
|
|
|
|
|
- <para>This chapter shows how to build a minimal Linux system.
|
|
|
- This system will contain just enough tools to start constructing the final
|
|
|
- LFS system in <xref linkend="chapter-building-system"/> and allow a working
|
|
|
- environment with more user convenience than a minimum environment would.</para>
|
|
|
+ <para>This chapter shows how to build the last missing bits of the
|
|
|
+ temporary system: first, the tools needed by the build machinery of
|
|
|
+ various packages, then three packages needed to run tests.
|
|
|
+ Now that all circular dependencies have been resolved,
|
|
|
+ we can use a <quote>chroot</quote> environment, completely isolated
|
|
|
+ from the computer used for the build, except for the running kernel.</para>
|
|
|
+
|
|
|
+ <para>For proper operation of the isolated environment, some communication
|
|
|
+ with the running kernel must be established. This is done through the
|
|
|
+ so-called <emphasis>Virtual Kernel File Systems</emphasis>, which must be
|
|
|
+ mounted when entering the chroot environment. You may want to check
|
|
|
+ that they are mounted by issuing <command>ls $LFS/dev</command>,
|
|
|
+ <command>ls $LFS/proc</command>, or <command>ls $LFS/sys</command>.
|
|
|
+ Note that mounting the virtual kernel file systems must be done
|
|
|
+ <emphasis>each time you want to enter the chroot
|
|
|
+ environment</emphasis>.</para>
|
|
|
+
|
|
|
+ <para>Until <xref linkend="ch-tools-chroot"/>, the commands must be
|
|
|
+ run as <systemitem class="username">root</systemitem>, with the
|
|
|
+ <envar>LFS</envar> variable set. After entering chroot, all commands
|
|
|
+ are run as root, fortunately without access to the OS of the computer
|
|
|
+ you build LFS on. Be careful anyway, as it is easy to destroy the whole
|
|
|
+ LFS system with badly formed commands.</para>
|
|
|
|
|
|
- <para>There are two steps in building this minimal system. The first step
|
|
|
- is to build a new and host-independent toolchain (compiler, assembler,
|
|
|
- linker, libraries, and a few useful utilities). The second step uses this
|
|
|
- toolchain to build the other essential tools.</para>
|
|
|
-<!--
|
|
|
- <para>The files compiled in this chapter will be installed under the
|
|
|
- <filename class="directory">$LFS</filename> directory to keep them
|
|
|
- separate from the files installed in the next chapter and the host
|
|
|
- production directories. Since the packages compiled here are temporary,
|
|
|
- we do not want them to pollute the soon-to-be LFS system.</para>
|
|
|
--->
|
|
|
</sect1>
|