|  | @@ -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>
 |