Iš šio straipsnio sužinosite apie Serial Over LAN ir kaip jį aktyvuoti.
Serial Over LAN (SOL) yra mechanizmas, leidžiantis valdomos sistemos serialinio prievado įvestį ir išvestį nukreipti per IP. Tai daroma naudojant IPMI.
Serialinio prievado aktyvavimas per LAN
Norėdami aktyvuoti SOL (serial over LAN), įveskite šią komandą:
ipmitool -C 3 -I lanplus -H <ipaddr> -U <user> -P <pass> sol activate
Šifravimo komplekto 3 naudojimas yra svarbus (jei tai nėra numatytoji reikšmė), nes kitaip ryšys per LANplus nėra įmanomas.
Jei pasirodo toks klaidos pranešimas, jums reikia aktyvuoti SOL naudotojui:
$ 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>
Po to galėsite pamatyti BIOS išvestį. Pasiekimas prie paleidimo užkroviklio ir/ar paleistoje sistemoje reikalauja papildomų nustatymų.
GRUB2
GRUB2 atveju tiesiog pakeiskite keletą eilučių, kad jos atitiktų šias reikšmes /etc/default/grub
ir vėl sugeneruokite nustatymus.
Su Supermicro X9SRi-F, serialinė konsolė yra ttyS2/unit=2. Su Asus Z10PA-U8, ji yra ttyS1/unit=1. O su Intel S1200V3RPL, ji yra ttyS0/unit=0. Taip pat reikia pažymėti, kad baudų dažnis su Asus Z10PA-U8 turi būti nustatytas į 57600, o su kitomis – 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) atveju pridėkite šias eilutes į /boot/grub/menu.lst
arba /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
Tuo pačiu metu į kernelio paleidimo parinktis reikia pridėti tą patį serialinį prievadą. Tai reiškia, kad su Intel S1200V3RPL naudojamas ttyS0, su Asus Z10PA-U8 naudojamas ttyS1 ir su Supermicro X9SRi-F naudojamas ttyS2.
console=tty0 console=ttyS0,115200n
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)
For GRUB1 (grub-legacy), add the following lines to /boot/grub/menu.lst
or /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
Tuo pačiu metu kernelio paleidimo parinktims reikia pridėti tą patį serialinį prievadą. Tai yra ttyS0 su Intel S1200V3RPL, ttyS1 su Asus Z10PA-U8 ir ttyS2 su Supermicro X9SRi-F.
console=tty0 console=ttyS0,115200n8
Tai pasako branduoliui išvestį pirmame serialiniame prievade. Pakeitus GRUB_TERMINAL į serial, visi įvesties/išvesties duomenys nukreipiami į serialinį prievadą. Vietinis ekranas nebebus rodomas starto meniu, todėl nebebus galima pasirinkti paleidimo įrašo naudojant KVM Console ar KVM. Po paleidimo iš naujo, išvestis bus siunčiama tiek lokaliai ekrane, tiek serialiniame prievade.
Po to jums reikia nustatyti terminalą serialiniam prievadui sistemoje. Debian 7.x (wheezy) / Debian 8 su Sys-V Init
Turite pridėti šią eilutę į /etc/inittab
. Čia vėl naudokite ttyS0 ir 115200 baudų su Intel S1200V3RPL, ttyS2 ir 115200 baudų su Supermicro X9SRi-F ir ttyS1 ir 57600 baudų su Asus Z10PA-U8:
T0:2345:respawn:/sbin/getty -L ttyS0 115200 vt100
Po to galite aktyvuoti terminalą įvesdami init q
.
Ubuntu (iki 14.10 su Upstart)
Sukurkite failą /etc/init/ttyS0.conf
su šiuo turiniu (arba alternatyviai, ttyS2.conf su ttyS2 ir 115200 baudų su Supermicro X9SRi-F modeliais arba ttyS1.conf su ttyS1 ir 57600 baudų su Asus Z10PA-U8 modeliais):
# ttyS0 - getty
#
# Šis paslaugos palaiko getty ant ttyS0 nuo sistemos paleidimo momento
# iki jos vėl išjungimo.
start on stopped rc RUNLEVEL=[2345]
stop on runlevel [!2345]
respawn
exec /sbin/getty -L ttyS0 115200 vt100
Po to galite aktyvuoti terminalą įvesdami start ttyS0
.
CentOS
CentOS 6.x, konfigūracija panaši į Ubuntu. Tačiau /etc/init/serial.conf
automatiškai paleidžia getty ant serialinio prievado, kuris prideda prievadą /etc/securetty
. Taigi jums tiesiog reikia konfigūruoti serialinę konsolę grub.conf
ir pridėti tinkamą branduolio parinktį.
Debian 8 / OpenSuSE / Fedora
Debian 8 (jessie), OpenSuSE ir kiti padaliniai, tokie kaip Fedora, kurie naudoja systemd ir GRUB2, tiesiog pakeiskite /etc/default/grub
atitinkamai ir atnaujinkite konfigūraciją naudodami grub2-mkconfig
. Kitą kartą paleidus, systemd automatiškai pradės naudoti GRUB2 serialinį prievadą.
Serialinė konsolė
Dabar, jei prisijungsite per ipmitool
, greitai pamatysite prisijungimo langą:
$ 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: