Enabling the Serial Console

TNSR can utilize a serial console on hardware containing a serial port, either directly in hardware or virtualized though a feature such as IPMI for Serial Over LAN (SOL).

Note

Certain Netgate hardware models may ship with the hardware serial console already active. Try to access the console before performing additional steps.

Netgate appliances equipped with IPMI ship with default BIOS settings enabled for SOL operation. This applies to the 1537, 1541 and future models containing IPMI devices.

Warning

Modifying the kernel command line incorrectly can result in a system that does not boot. Take a backup before starting, and only make the changes listed in this document.

Backup the Kernel Boot Configuration

Enabling the serial console requires adding arguments to the kernel command line.

Backup the existing grub configuration file:

cp /boot/grub2/grub.cfg ./grub.cfg.bak

Edit the Kernel Boot Configuration

Edit /etc/default/grub with text editor (e.g. vi). The file should look like this:

GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto resume=/dev/mapper/cl-swap rd.lvm.lv=cl/root rd.lvm.lv=cl/swap selinux=0"
GRUB_DISABLE_RECOVERY="true"
GRUB_ENABLE_BLSCFG=true
GRUB_CMDLINE_LINUX_DEFAULT="intel_iommu=on iommu=pt sdhci.debug_quirks2=0x40"

Find the GRUB_CMDLINE_LINUX_DEFAULT line and append the console settings. For IPMI SOL, the terminal device will be ttyS1. For a hardware serial console, it would be ttyS0. This example will use ttyS1.

This example enables both SOL on ttyS1 and the VGA console on tty0. Add console=ttyS1,115200n8 console=tty0 to the end of the GRUB_CMDLINE_LINUX_DEFAULT line as shown:

GRUB_CMDLINE_LINUX_DEFAULT="intel_iommu=on iommu=pt sdhci.debug_quirks2=0x40 console=ttyS1,115200n8 console=tty0"

Note

Adding entries for these two consoles results in boot messages being displayed on both SOL and iKVM/VGA output.

Rebuild the Kernel Boot Configuration

Build a new grub.cfg using the following command:

sudo grub2-mkconfig -o /boot/grub2/grub.cfg

Reboot the system normally and the new settings will take effect.

Accessing the Serial Console

IPMI Serial Over LAN

There are multiple methods which can connect to the serial console.

The simplest method is to use the ipmiconsole tool which is part of the freeipmi package.

ipmiconsole -h <IPMI address> -u <username> -P

To exit the IPMI console press the following keys in sequence: &, ..

Alternately, use ssh to connect to the IPMI controller then launch the serial console utility:

ssh <username>@<IPMI address>
cd system1
cd sol1
start

To exit the SOL console press the following keys in sequence: Esc, Enter, Shift+T.

Hardware Serial Console

To access the hardware serial console, a serial cable connection must be established between the client and the device. This varies widely by hardware and may be a USB port, DB9 port, RJ45 style port, and may also involve a null modem adapter. Check the hardware device manual for details.

On the client device, use standard serial client software such as screen, cu, PuTTY, minicom, or others to access the console. Consult the serial client software documentation for additional details.

For devices sold by Netgate, the hardware manual contains information about accessing the serial console which covers hardware and software. For an example, see the manual for the Netgate 5100.