aboutsummaryrefslogtreecommitdiffstats
path: root/chapter06/makedev.xml
diff options
context:
space:
mode:
Diffstat (limited to 'chapter06/makedev.xml')
-rw-r--r--chapter06/makedev.xml60
1 files changed, 59 insertions, 1 deletions
diff --git a/chapter06/makedev.xml b/chapter06/makedev.xml
index e7005e574..acb766683 100644
--- a/chapter06/makedev.xml
+++ b/chapter06/makedev.xml
@@ -7,7 +7,65 @@ Estimated required disk space: &makedev-compsize;</screen>
&aa-makedev-shortdesc;
&aa-makedev-dep;
-&c6-makedev-inst;
+
+<sect2><title>&nbsp;</title><para>&nbsp;</para></sect2>
+
+<sect2>
+<title>Creating devices</title>
+
+<para>Note that unpacking the <filename>MAKEDEV-&makedev-version;.bz2</filename>
+file doesn't create a directory for you to <userinput>cd</userinput> into, as
+the file contains only a shell script.</para>
+
+<para>Install the <userinput>MAKEDEV</userinput> script:</para>
+
+<screen><userinput>bzcat MAKEDEV-&makedev-version;.bz2 &gt; /dev/MAKEDEV
+chmod 754 /dev/MAKEDEV</userinput></screen>
+
+<para>Run the script to create the device files:</para>
+
+<screen><userinput>cd /dev
+./MAKEDEV -v generic-nopty</userinput></screen>
+
+<para>The meaning of the arguments:</para>
+
+<itemizedlist>
+<listitem><para><userinput>-v</userinput>: This tells the script to run in
+verbose mode.</para></listitem>
+
+<listitem><para><userinput>generic-nopty</userinput>: This instructs
+<userinput>MAKEDEV</userinput> to create a generic selection of commonly used
+device special files, except for the ptyXX and ttyXX range of files. We don't
+need those files because we are going to use Unix98 PTYs via the
+<emphasis>devpts</emphasis> file system.</para></listitem>
+</itemizedlist>
+
+<para>If it turns out that some special device <filename>zzz</filename> that
+you need is missing, try running <userinput>./MAKEDEV -v zzz</userinput>.
+Alternatively, you may create devices via the <userinput>mknod</userinput>
+program. Please refer to its man and info pages if you need more
+information.</para>
+
+<para>Additionally, if you were unable to mount the devpts filesystem earlier in
+the "Mounting the proc and devpts file systems" section, now is the time to
+try the alternatives. If your kernel supports the devfs file system, run the
+following command to mount devfs:</para>
+
+<screen><userinput>mount -t devfs devfs /dev</userinput></screen>
+
+<para>This will mount the devfs file system over the top of the new static
+<filename>/dev</filename> structure. This poses no problems, as the device nodes
+created are still present, they are just hidden by the new devfs
+filesystem.</para>
+
+<para>If this still doesn't work, the only option left is to use the MAKEDEV
+script to create the ptyXX and ttyXX range of files that would otherwise not be
+needed. Ensure you are still in the <filename>/dev</filename> directory then run
+<userinput>./MAKEDEV -v pty</userinput>. The downside of this is, we are
+creating an extra 512 device special files which will not be needed when we
+finally boot into the finished LFS system.</para>
+
+</sect2>
</sect1>