Date: Thu, 17 Oct 2002 23:03:06 +0200 From: Udo Erdelhoff <ue@nathan.ruhr.de> To: freebsd-doc@FreeBSD.ORG Subject: Re: Please review: new handbook chapter on serial install Message-ID: <20021017210306.GA74874@nathan.internal> In-Reply-To: <20021015195849.GA76747@nathan.internal> References: <20021015195849.GA76747@nathan.internal>
next in thread | previous in thread | raw e-mail | index | archive | help
Here's version two:
- correct the typos noticed by various people
- cut down on the use of 'you'
- generally tried to chat less and include more information
Index: chapter.sgml
===================================================================
RCS file: /home/ncvs/doc/en_US.ISO8859-1/books/handbook/serialcomms/chapter.sgml,v
retrieving revision 1.66
diff -u -r1.66 chapter.sgml
--- chapter.sgml 30 Sep 2002 15:33:26 -0000 1.66
+++ chapter.sgml 17 Oct 2002 20:17:19 -0000
@@ -2609,6 +2609,162 @@
attach a monitor into it. You might also try installing an AMI
BIOS.</para>
</sect2>
+
+ <sect2 id="serialconsole-install">
+ <sect2info>
+ <author>
+ <firstname>Udo</firstname>
+ <surname>Erdelhoff</surname>
+ <contrib>Contributed by </contrib>
+ </author>
+ </sect2info>
+
+ <title>Using a Serial Console to Install &os;</title>
+
+ <para>With only a little bit of work, it is also possible to
+ <emphasis>install</emphasis> a &os; system over a serial
+ console. The boot loader and the kernel used on the
+ installation floppies support a serial console, just like
+ their big counterparts that are installed on your hard disk.
+ In other words, the only requirements for using a serial
+ console to install &os; are a suitably configured system
+ (as described in <xref linkend="serialconsole-howto">)
+ and a boot medium that contains the right version of
+ <filename>boot.config</filename>.</para>
+
+ <para>In theory, this could be a remotely mounted root file
+ system for a diskless installation, a modified installation
+ CD/DVD, or a modified boot floppy. The easiest solution (and
+ the only one described in this chapter) is to create a
+ modified boot floppy. This is the only variant that can be
+ produced with the GENERIC kernel and tools available on a &os;
+ box after a standard installation. Please note that this does
+ <emphasis>NOT</emphasis> mean that all files have to be
+ installed from floppy, it is still possible to use a CD-ROM,
+ DVD-ROM, or an internet connection to get the files for the
+ distributions and packages.</para>
+
+ <para>The official way of creating a modified boot floppy is to
+ modify the scripts and <filename>Makefile</filename> used by
+ <command>make release</command>. This is not required if the
+ only change is the addition of a
+ <filename>boot.config</filename> file on the boot floppy. The
+ boot floppy consists of two parts, the boot sector/loader and
+ the installation kernel. The latter is stored in a small UFS
+ file system that can be modified and manipulated with all the
+ usual tools. This includes the creation of
+ <filename>boot.config</filename>. The only requirement is a
+ system that can mount, read, and write &os; file systems. As
+ a rule of thumb, this means another &os; system. Once you
+ have this, it is rather easy to create a modified
+ <filename>boot.flp</filename> for installation over a serial
+ console:</para>
+
+ <procedure>
+ <step>
+ <para>Create floppy disks from the
+ <filename>kern.flp</filename> and
+ <filename>mfsroot.flp</filename> images.</para>
+ </step>
+
+ <step>
+ <para>Insert the floppy disk with the
+ <filename>kern.flp</filename> into the drive.</para>
+ </step>
+
+ <step>
+ <para>Mount the file system which is on
+ <filename>kern.flp</filename>, create a suitable
+ <filename>boot.config</filename>, and unmount the
+ disk:</para>
+
+ <screen>&prompt.root; <userinput>mount /dev/fd<replaceable>X</replaceable> /mnt</userinput>
+&prompt.root; <userinput>echo -P > /mnt/boot.config</userinput>
+&prompt.root; <userinput>umount /mnt</userinput></screen>
+ </step>
+
+ <step>
+ <para>Connect your serial console to the new FreeBSD system,
+ just as explained above.</para>
+ </step>
+
+ <step>
+ <para>Insert the modified <filename>kern.flp</filename> into
+ the disk drive of the new FreeBSD system and reboot it.</para>
+ </step>
+ </procedure>
+
+ <para>After a while, you should see activity on your serial
+ console, probably the <quote>spiner</quote>, followed by the
+ usual start messages from the kernel. With two minor
+ exceptions, you can use &man.sysinstall.8; just as if you
+ were installing FreeBSD with a conventional set-up:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>&man.sysinstall.8; cannot start the emergency
+ holographic shell on an additional VTY because there is
+ only one serial console.</para>
+ </listitem>
+
+ <listitem>
+ <para>There is an additional dialog at the start of
+ &man.sysinstall.8;:</para>
+
+ <screen>/stand/sysinstall running as init on serial console
+
+These are the predefined terminal types available to
+sysinstall when running stand-alone. Please choose the
+closest match for your particular terminal.
+
+1 ...................... Standard ANSI terminal.
+2 ...................... VT100 or compatible terminal.
+3 ...................... FreeBSD system console (color).
+4 ...................... FreeBSD system console (monochrome).
+
+ 5 ...................... xterm terminal emulator.</screen>
+ </listitem>
+ </itemizedlist>
+
+ <para>Once &man.sysinstall.8; has finished extracting all the
+ distributions, it will ask you if you want to change your
+ settings. You will have to do this because the newly
+ installed system is not configured for a serial console
+ yet. The following settings may need to be changed:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para>In order to allow log-ins over the serial console, a
+ &man.getty.8; must be running on the
+ <devicename>ttyd0</devicename>. To do this, select
+ <literal>Configuration</literal>, then
+ <literal>TTYs</literal>, and change the settings for
+ <devicename>ttyd0</devicename>. The
+ <literal>status</literal> must be set to on, the terminal
+ <literal>type</literal> must match your particular serial
+ console.</para>
+ </listitem>
+
+ <listitem>
+ <para>Check the <filename>boot.config</filename> and
+ <filename>/boot/loader.conf</filename> of the newly
+ installed &os; system to make sure that it will use a
+ serial console during startup. To do this, select
+ <literal>Fixit</literal> from the main menu, then
+ <literal>shell</literal>.
+ <application>sysinstall</application> will put
+ <literal>console="comconsole"</literal> into
+ <filename>/boot/loader.conf</filename> but it will not
+ create <filename>/boot.config</filename>. This may need
+ to be adjusted to fit the specific requirements for the
+ new system.</para>
+ </listitem>
+ </itemizedlist>
+
+ <para>Once you have finished these steps, quit
+ <application>sysinstall</application> and watch your new &os;
+ system start with a serial console.</para>
+ </sect2>
</sect1>
</chapter>
--
"Finish the following setence: All power corrupts, absolute power..."
"...is even more fun."
"Correct."
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-doc" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20021017210306.GA74874>
