Как активировать последовательный порт через локальную сеть

Последнее изменение: Friday December 1st, 2023

От этой статьи вы узнаете о Serial over LAN и как его активировать.

Serial Over LAN (SOL) – это механизм, который позволяет перенаправлять ввод и вывод последовательного порта управляемой системы через IP. Это осуществляется через IPMI.

Активация Serial over LAN

Чтобы активировать SOL (Serial over LAN), выполните следующую команду:

ipmitool -C 3 -I lanplus -H <ipaddr> -U <user> -P <pass> sol activate

Использование шифрования сюиты 3 обязательно (если это не установка по умолчанию), потому что в противном случае связь через LANplus невозможна.

Если появляется следующее сообщение об ошибке, вам нужно активировать SOL для пользователя:

$ ipmitool -C 3 -I lanplus -H <ipaddr> -U <user> -P <pass> sol activate
Info: SOL payload disabled
$ ipmitool -C 3 -I lanplus -H <ipaddr> -U <user> -P <pass> sol payload enable <channel> <user-id>

После этого вы сможете видеть вывод BIOS. Для доступа к загрузчику и/или загруженной системе требуются дополнительные настройки.

GRUB2

Для GRUB2 просто измените некоторые строки в /etc/default/grub и заново сгенерируйте настройки.

С Supermicro X9SRi-F серийная консоль находится на ttyS2/unit=2. С Asus Z10PA-U8 – на ttyS1/unit=1. И с Intel S1200V3RPL – на ttyS0/unit=0. Также следует отметить, что скорость передачи должна быть установлена на 57600 для Asus Z10PA-U8 и 115200 для всех остальных.

Intel S1200V3RPL

GRUB_CMDLINE_LINUX_DEFAULT="nomodeset console=tty0 console=ttyS0,115200n8"
GRUB_TERMINAL=serial
GRUB_SERIAL_COMMAND="serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1"

Supermicro X9SRi-F

GRUB_CMDLINE_LINUX_DEFAULT="nomodeset console=tty0 console=ttyS2,115200n8"
GRUB_TERMINAL=serial
GRUB_SERIAL_COMMAND="serial --speed=115200 --unit=2 --word=8 --parity=no --stop=1"

Asus Z10PA-U8

GRUB_CMDLINE_LINUX_DEFAULT="nomodeset console=tty0 console=ttyS1,57600n8"
GRUB_TERMINAL=serial
GRUB_SERIAL_COMMAND="serial --speed=57600 --unit=1 --word=8 --parity=no --stop=1"

GRUB (grub-legacy)

Для GRUB1 (grub-legacy) добавьте следующие строки в /boot/grub/menu.lst или /boot/grub/grub.conf (CentOS):

Intel S1200V3RPL

serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1
terminal --timeout=5 serial console

Supermicro X9SRi-F

serial --unit=2 --speed=57600 --word=8 --parity=no --stop=1
terminal --timeout=5 serial console

Asus Z10PA-U8

serial --unit=1 --speed=115200 --word=8 --parity=no --stop=1
terminal --timeout=5 serial console

В то же время вы должны добавить тот же последовательный порт в параметры загрузки ядра. Это ttyS0 с Intel S1200V3RPL, ttyS1 с Asus Z10PA-U8 и ttyS2 с Supermicro X9SRi-F.

console=tty0 console=ttyS0,115200n8

Это сообщает ядру выводить информацию на первом последовательном порту. Изменение GRUB_TERMINAL на serial означает, что любой ввод/вывод будет перенаправлен на последовательный порт. Локальный экран больше не будет отображать меню загрузки, и, таким образом, больше нельзя выбирать запись загрузки через KVM Console или KVM. После перезагрузки вывод будет отправляться параллельно и на локальный экран, и на последовательный порт.

После этого вам нужно настроить терминал для последовательного порта в вашей системе. Debian 7.x (wheezy) / Debian 8 с Sys-V Init

Вам нужно добавить следующую строку в /etc/inittab. Здесь также используйте ttyS0 и 115200 Baud с Intel S1200V3RPL, ttyS2 и 115200 Baud с Supermicro X9SRi-F, а также ttyS1 и 57600 Baud с Asus Z10PA-U8:

T0:2345:respawn:/sbin/getty -L ttyS0 115200 vt100

После этого вы можете активировать терминал, введя init q.

Ubuntu (до 14.10 с Upstart)

Создайте файл /etc/init/ttyS0.conf со следующим содержанием (или альтернативно ttyS2.conf с ttyS2 и 115200 Baud с моделями Supermicro X9SRi-F или ttyS1.conf с ttyS1 и 57600 Baud с моделями Asus Z10PA-U8):

# ttyS0 - getty
#
# This service maintains a getty on ttyS0 from the point the system is
# started until it is shut down again.

start on stopped rc RUNLEVEL=[2345]
stop on runlevel [!2345]

respawn
exec /sbin/getty -L ttyS0 115200 vt100

После этого вы можете активировать терминал, введя start ttyS0.

CentOS

В CentOS 6.x конфигурация аналогична Ubuntu. Однако /etc/init/serial.conf автоматически запускает getty на последовательном порту, который добавляет порт в /etc/securetty. Поэтому вам просто нужно настроить последовательную консоль в grub.conf и присоединить соответствующую опцию ядра.

Debian 8 / OpenSuSE / Fedora

Для Debian 8 (jessie), OpenSuSE и других дистрибутивов, таких как Fedora, которые используют systemd и GRUB2, просто измените /etc/default/grub и обновите конфигурацию, используя grub2-mkconfig. На следующей загрузке systemd автоматически начнет использовать последовательный порт GRUB2.

Серийная консоль

Теперь, если вы подключитесь через ipmitool, вы быстро увидите вход:

 $ ipmitool -C 3 -I lanplus -H <ipaddr> -U <user> -P <pass> sol activate
 [SOL Session operational.  Use ~? for help]

 Debian GNU/Linux 7 Debian-70-wheezy-64-minimal ttyS0

 Debian-70-wheezy-64-minimal login:
Was this article helpful?
Просмотры: 352

10 лет с BeeHosting!
Отмечаем скидками до 70% на все услуги
+ бесплатная миграция сайта.

Beehosting.pro сайт использует файлы «куки»

Мы используем файлы cookie, чтобы анализировать трафик, подбирать для вас подходящий контент и рекламу, а также дать вам возможность делиться информацией в социальных сетях. Мы передаем информацию о ваших действиях на сайте партнерам Google: социальным сетям и компаниям, занимающимся рекламой и веб-аналитикой. Наши партнеры могут комбинировать эти сведения с предоставленной вами информацией, а также данными, которые они получили при использовании вами их сервисов.

Меню