Public
Snippet $7 authored by Matthew Monaco

IPMI SOL with SuperMicro A1SRi-2758F and Linux

Edited
IPMI_SOL_A1SRi-2758F_Linux.md

IPMI Serial-Over-LAN w/ a SuperMicro A1SRi-2758F and Linux

These are some notes on how I got serial-over-lan working using my SuperMicro A1SRi-2758F running Linux as well as a Linux client using ipmitool.

BIOS Settings

I did not change items marked "(default)", but I thought their values were relevant or otherwise worth noting.

Advanced > Boot Feature
    Quiet Boot                              = Disabled
    AddOn ROM Display Mode                  = Force BIOS (default)

If "Quiet Boot" is enabled, the BIOS will display a splash screen and the SOL will be blank until the OS takes over. You can still guess and hit DEL to enter setup, but IMO it's nicer to see the hotkeys for entering setup, boot menu, etc.

I don't know anything about "AddOn ROM Display Mode".

Advanced > Super IO Configuration > Serial Port 0 Configuration
    Serial Port                             = Disabled

Advanced > Super IO Configuration > Serial Port 1 Configuration
    Serial Port                             = Enabled
    Change Settings                         = Auto (default)
    Device Mode                             = 24MHz/13 (default)
    Serial Port 2 Attribute                 = SOL

Serial Port 0 can't be used for SOL (only COM). You probably don't need this. Serial Port 1 should be enabled and configured for SOL.

Advanced > Serial Port Console Redirection > COM1 Console Redirection
    Console Redirection                     = Disabled

Advanced > Serial Port Console Redirection > COM2 Console Redirection
    Console Redirection                     = Enabled
Advanced > Serial Port Console Redirection > COM2 Console Redirection > Console Redirection Settings
    Terminal Type                           = VT-UTF8
    Bits per second                         = 115200
    Data Bits                               = 8 (default)
    Parity                                  = None (default)
    Flow Control                            = None (default)
    *                                       = (default)

Advanced > Serial Port Console Redirection > Out of Band Console Redirection
    Console Redirection                     = Disabled

I'm not sure why there are settings for COM1 when only COM2 can be used for SOL; I'm probably missing something =/.

Security
    Administrator Password                  = XXXX

This is good practice. You will need your IPMI password whenever using SOL, but having an additional BIOS password is a good idea!

Kernel Settings

This is pretty simple. You need console=ttyS1,115200n8 console=tty0 on the kernel command line. So add this text to the entries under /boot/loader/entries/*.conf if you're using gummiboot (EFI) or /boot/grub/grub.cfg if you're using grub (BIOS).

The first console=ttyS1,115200n8 tells the kernel to use the serial device that IPMI will expose for SOL. Note that the parameters correspond to the Console Redirection Settings, above. The second console=tty0 tells the kernel to continue to use the default console as it was before (most likey VGA). Without it, your console over VGA (including the console redirection via the web GUI) will be blank for most of the boot process.

Console Usage

Connecting

I added the following to my bashrc:

_ivy_get_pass() {
    [[ $_ivy_pass ]] && return
    read -s -p"Ivy IPMI Password: " _ivy_pass
    echo
}

ivy-ipmi() {
    _ivy_get_pass
    ipmitool -I lanplus -H ivy.rac -U matt -P "$_ivy_pass" "$@"
}

ivy-console() {
    ivy-ipmi sol activate
}

ivy-sensors() {
    ivy-ipmi sdr
}

ivy-shutdown() {
    ivy-ipmi chassis power soft
}

ivy-poweroff() {
    ivy-ipmi chassis power off
}

ivy-poweron() {
    ivy-ipmi chassis power on
}

To access the SOL, all I need to do is:

$ ivy-console

Hotkeys

There are a few hotkeys which you can look up easily, but here they are for reference. The begin with '~'. So literally type SHIFT+~.

~?    Help (list of all hotkeys)
~^Z   Put console in the background (SHIFT+~, CTRL+Z)
~.    Terminate the consol

SSH

You can also SSH into the IPMI controller to get a console:

$ ssh [<user>]@host
-> start /system1/sol1

It takes a fairly long time to get a password prompt. When you start the console there is a note about the hotkey to exit, however the '~'-based hotkeys (above) still appear to work.