The Importance of Serial Console

January 16, 2013 by · 2 Comments 

I have long been a huge fan of having serial console on my servers–it can really save the day when a mistake is made. Yesterday, one of my coworkers botched the sshd_config in an upgrade of a server, so the server came up fine, but without sshd. As a result, the system was not accessible for remote login via the network.

Over the years, I have done serial console in many ways. I began with a single null modem cable between the back of two servers. Next, I utilized a RocketPort multi-port serial card with 8 serial ports on it. These days, I have moved on to employing big serial console servers such as those made by OpenGear, providing up to 48 ports. They also have ancillary features such as providing a Nagios platform and Environmental monitoring.

No matter your physical connectivity, I recommend using Conserver. This helps by logging what is happening on the console, which can be very handy if you need to see what happened in the past whether it be a function of the system, or to see who did what. It also provides multi-user access, so you can watch while someone else is working and both of you can collaborate on fixing a problem.

In order for the previous technologies to be useful, the servers require configuration as well. The first step is to configure the BIOS for serial console redirection. Once this has been performed, the OS will need to be configured to present a console login via the serial port. The FreeBSD Handbook explains how to do this Here.

About brd

Comments

2 Responses to “The Importance of Serial Console”
  1. langseth says:

    We do the same with our servers. One other thing we do is add the kernel debugger, this allows us to reboot in all except a few system lockups. While we need it less now that we switched to newer ipmi enabled hardware we still have a considerable number of older systems that do not have ipmi.

    Additional kernel config:
    options KDB
    options KDB_UNATTENDED
    options DDB
    options ALT_BREAK_TO_DEBUGGER

    Then on the serial console I can break to the debugger using ~+B and use http://www.freebsd.org/doc/en/books/developers-handbook/kerneldebug-online-ddb.html

  2. brd says:

    I believe some of those Kernel Options have been replaced with sysctls. Such as the debug.kdb.alt_break_to_debugger sysctl. I have not had time to play with these yet. But for my purposes I prefer to run a GENERIC kernel.

Speak Your Mind

Tell us what you're thinking...
and oh, if you want a pic to show with your comment, go get a gravatar!