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>