Serial Console
Jim Wright
jwright at penguincomputing.com
Sun Jul 14 11:57:56 PDT 2002
> Date: Sat, 13 Jul 2002 12:54:13 -0500
> From: "Timothy W. Moore" <moor007 at bellsouth.net>
> To: beowulf at beowulf.org
> Subject: Serial Console
>
> This should be in the Redhat docs...and if it is, I have been unable to
> find it.
http://www.redhat.com/docs/manuals/linux/RHL-7.3-Manual/install-guide/s1-x86-starting.html
> I built an 8-CPU cluster, and because I am not a linux guru, took the
> lazy route and used a KVM switch. I upgraded my networking with GigE
> that now occupies the riser slot...former resting place of my video
> card. I now want to upgrade to Redhat 7.3 without the benefit of a
> video card and have no idea where to begin. The first question is
> hardware...do I need a special card? switch? The second question is
> software...what files do I change to redirect the ouput to com2(?)? If
> there is an Idiot's guide (step by step) on the net, the URL would be
> greatly appreciated. Remember...I know absolutely nothing about this
> topic.
First, get a terminal server. Wonderful devices. For years and years I
used Xylogics Remote Annex. They've been bought out a few times, and I'm
not sure who owns them now. Very reliable, but not the cheapest solution.
At Penguin we use and resell the Cyclades boxes. Most of the clusters
we sell include one or more of these. I've had very good experiences
with them. And they run embedded linux! Setup is straightforward,
and they don't start the manual out by saying "load our software on your
windoze box..."
The one trick you need is how to get the installer started using the
serial port as console. If you just put in the cdrom and boot, it
doesn't matter what is contained in the files on you hard drive. I
recommend that you create a boot floppy for RH73, then mount that
floppy and edit the syslinux.cfg file. Change the default entry
so it looks like
label linux
kernel vmlinuz
append initrd=initrd.img lang= devfs=nomount ramdisk_size=8192 text console=ttyS0,9600n8
Fill in the values appropriate for your serial port. Then boot
off the floppy, wait for the timeout and then it will boot with your
default option. Eventually you should see the installer appear on the
serial port. Install or upgrade as desired.
There are several improvements, such as booting via PXE, installing over
the network, using kickstart, etc. That is an excersize for the reader.
After the system is installed, you will want to make the following changes
to allow the running system to use the serial console. You might want
use to the floppy trick again, but this time add "rescue" to the append
options. This will allow you to modify the installed system.
Below are the steps required to set up access to a system's console
via the serial port. This setup will assume 9600 baud, with no parity,
eight data bits and one stop bit. It also assumes you will be using the
first serial port on the motherboard. Adjust to suit your needs.
1. BIOS
Set up your BIOS as required so that it operates both through
the serial port and through the graphics console. The details of
this are different for every motherboard, and will not be covered
here. Note that some motherboards (usually "workstation" boards)
do not have this feature.
(This is the chicken and egg step. There really is no way around
having to install a keyboard/video/mouse on your system to do this.
Unless of course your system vendor did it for you! Hint. :)
2. LILO
In the global options section of the /etc/lilo.conf file, add
the line
serial=0,9600n8
3. kernel
In the /etc/lilo.conf file, add the following line to each of the
individual boot sections
append="console=tty0 console=ttyS0,9600n8"
This instructs the kernel where to print startup messages. As
illustrated, you can have more than one console defined for startup
messages. However, only a single device can be associated with
/dev/console. The last device listed as a console argument will
become /dev/console for the running system. This means that on
the graphics console, only a subset of the boot messages will
appear. The complete collection of boot messages will appear on
the serial port.
4. getty
Add the following line to the /etc/inittab file.
S0:2345:respawn:/sbin/agetty -w 9600 ttyS0
This will allow you to log in to the serial port. If you happen
to prefer mgetty over agetty (and I'm not aware of any compelling
reason to choose one over the other) you can instead use the
following line.
S0:2345:respawn:/sbin/mgetty -r -s 9600 /dev/ttyS0 vt100
5. stty settings
Delete the file /etc/ioctl.save. This file is where SysVinit records
tty settings. Since you are changing from the graphics console to
the serial port, you want a new set of settings for this terminal.
6. security
Modify the /etc/securetty file so that root can log in on the serial
port. For example, append a line containing "ttyS0" to the file.
The above instructions are what we use here. I recommend lilo
for clusters. If you use grub, you need to modify steps 2 and 3 as
appropriate.
Jim Wright, Senior Engineer
Tel: 415-358-2609 Fax: 415-358-2646 Toll Free: 888-PENGUIN
PENGUIN COMPUTING - www.penguincomputing.com
More information about the Beowulf
mailing list