|
@@ -2,33 +2,22 @@
|
|
|
<title>Mounting the proc and devpts file systems</title>
|
|
|
<?dbhtml filename="proc.html" dir="chapter06"?>
|
|
|
|
|
|
-<para>In order for certain programs to function properly, the proc and devpts
|
|
|
-file systems must be available within the chroot environment.
|
|
|
-As a file system can be mounted as many times and in as many places
|
|
|
-as you like, it's not a problem that the these file systems are already
|
|
|
-mounted on your host system -- especially so because they are virtual
|
|
|
-file systems.</para>
|
|
|
+<para>In order for certain programs to function properly, the
|
|
|
+<emphasis>proc</emphasis> and <emphasis>devpts</emphasis> file systems must be
|
|
|
+available within the chroot environment. A file system can be mounted as many
|
|
|
+times and in as many places as you like, thus it's not a problem that the these
|
|
|
+file systems are already mounted on your host system -- especially so because
|
|
|
+they are virtual file systems.</para>
|
|
|
|
|
|
-<para>The proc file system is mounted under
|
|
|
-<filename class="directory">/proc</filename> by running the
|
|
|
-following command:</para>
|
|
|
+<para>The <emphasis>proc</emphasis> file system is the process information
|
|
|
+pseudo-filesystem that the kernel uses to provide status information about the
|
|
|
+status of the system.</para>
|
|
|
|
|
|
-<para><screen><userinput>mount proc /proc -t proc</userinput></screen></para>
|
|
|
-
|
|
|
-<para>The devpts file system is mounted to <filename class="directory">/dev/pts
|
|
|
-</filename> by running:</para>
|
|
|
-
|
|
|
-<para><screen><userinput>mount devpts /dev/pts -t devpts</userinput></screen>
|
|
|
-</para>
|
|
|
-
|
|
|
-<para>Should this command fail with an error to the effect of:</para>
|
|
|
-
|
|
|
-<blockquote><screen>filesystem devpts not supported by kernel</screen></blockquote>
|
|
|
+<para>The proc file system is mounted on
|
|
|
+<filename class="directory">/proc</filename> by running the following
|
|
|
+command:</para>
|
|
|
|
|
|
-<para>This most likely means that your host system uses devfs, and does not
|
|
|
-have the necessary support for devpts in the kernel. To work around this
|
|
|
-problem, we will place the host's devfs system on top of the new /dev
|
|
|
-structure later, in the section where we run the MAKEDEV script.</para>
|
|
|
+<para><screen><userinput>mount proc /proc -t proc</userinput></screen></para>
|
|
|
|
|
|
<para>You might get warning messages from the mount command, such as
|
|
|
these:</para>
|
|
@@ -40,14 +29,34 @@ not enough memory</screen></blockquote>
|
|
|
isn't installed completely yet and some files are missing. The mount itself
|
|
|
will be successful and that's all we care about at this point.</para>
|
|
|
|
|
|
-<para>The last error (not enough memory) doesn't always show up. It depends
|
|
|
-on your system configuration (such as the host system's Glibc version that was
|
|
|
-used to compile the mount program with).</para>
|
|
|
+<para>The <emphasis>devpts</emphasis> file system was mentioned earlier and is
|
|
|
+now the most common way for pseudo terminals (PTYs) to be implemented.</para>
|
|
|
+
|
|
|
+<para>The devpts file system is mounted on
|
|
|
+<filename class="directory">/dev/pts</filename> by running:</para>
|
|
|
+
|
|
|
+<para><screen><userinput>mount devpts /dev/pts -t devpts</userinput></screen></para>
|
|
|
+
|
|
|
+<para>Should this command fail with an error to the effect of:</para>
|
|
|
+
|
|
|
+<blockquote><screen>filesystem devpts not supported by kernel</screen></blockquote>
|
|
|
|
|
|
-<para>Remember, if for any reason you stop working on your LFS, and
|
|
|
-start again later, it's important to check that these filesystems are still
|
|
|
-mounted inside the chroot environment. Otherwise, some programs might
|
|
|
-end up compiled incorrectly.</para>
|
|
|
+<para>The most likely cause is that your host system's kernel was compiled
|
|
|
+without support for the devpts file system. You can check which file systems
|
|
|
+your kernel supports by peeking into its internals with a command such as
|
|
|
+<userinput>cat /proc/filesystems</userinput>. If for some reason, devpts is
|
|
|
+listed there but the mount still doesn't work, check instead for a different
|
|
|
+file system variety called <emphasis>devfs</emphasis>. If devfs is listed then
|
|
|
+we'll be able to work around the problem by mounting the host's devfs file
|
|
|
+system on top of the new <filename>/dev</filename> structure which we'll create
|
|
|
+later on in the "Creating devices (Makedev)" section. If devfs was not listed,
|
|
|
+do not worry because there is yet a third way to get PTYs working inside the
|
|
|
+chroot environment. We'll cover this shortly in the aforementioned Makedev
|
|
|
+section.</para>
|
|
|
+
|
|
|
+<para>Remember, if for any reason you stop working on your LFS, and start again
|
|
|
+later, it's important to check that these filesystems are still mounted inside
|
|
|
+the chroot environment, otherwise problems are likely to occur.</para>
|
|
|
|
|
|
</sect1>
|
|
|
|