Configurar la consola serie de un servidor Linux
Este artículo lo subió el 15 de agosto del 2003 Alex Dumont al antiguo portal de tapiasbravo.com. También lo podréis encontrar en su web personal.
Una vez configurada la consola serie, podremos conectarnos a la consola de nuestro equipo desde otro por puerto serie y tener un control (casi) total incluso desde el Grub (o Lilo).
Ademas podremos hacer varias cosas interesantes: entrar como root, rebotar la maquina, incluso entrar en modo single user! Todo esto de forma remota.
Configurar la consola serie
—[ Introduccion ]—————————————————–
Una vez configurada la consola serie, podremos conectarnos a la consola de nuestro equipo desde otro por puerto serie.
Esto implica dos equipos:
Basicamente, nuestro «servidor» SERV, y un cliente CLI.
Configuramos lo que detallo a continuacion en SERV, conectamos SERV y CLI por un cable null-modem, y desde CLI accederemos a la consola de SERV.
Para que sirve esto ?? Si es mucho mejor conectarse por red por ssh o incluso telnet!
Ya, pero desde la consola de un equipo, podemos hacer mas cosas:
* entrar como root (cuando en general esta deshabilitado el acceso a root por telnet/ssh)
* rebotar la maquina SERV ! (por si se hubiera quedado «frito»)
* rebotar+entrar en modo single user !!
Ambas cosas pueden resultar de gran interes por ejemplo si tenemos 2 equipos Linux A y B con conexion a Internet, configuramos esto en ambos de tal forma que desde cualquiera sea «consola del otro»: desde A podremos conectarnos a la consola de B (A sera consola de B), y vice-versa.
Si por ejemplo B se queda frito, entramos en A por ssh o lo que sea (de forma remota), y desde A abrimos la consola de B: a lo mejor podemos ya algun mensaje «raro» en la consola de B que nos indique el problema (como un Oops por ejemplo). Si no consequimos entrar como root, al menos podemos rebotar la maquina y si hace falta entrar en sigle user para hacer algo de mantenimiento !
Pero como se hace esto ?? Pues ahi va…
—[ Configuracion en el kernel ]—————————————
Primero tenemos configurar el soporte para los puertos series y la consola serie en nuestro kernel. Los kernels de RH ya vienen con este soporte.
* En /usr/src/linux/.config:
…
CONFIG_SERIAL=y
CONFIG_SERIAL_CONSOLE=y
…
* O si preferimos usar make menuconfig/xconfig
Character devices —>
<*> Standard/generic (8250/16550 and compatible UARTs) serial support
[*] Support for console on serial port
Luego hay que compilar el kernel :).
—[ Habilitar el login de root en la consola serie ]——————-
Primero tenemos que tocar el inittab para que se levante un getty en el puerto serie.
Nuestra consola en cualquier equipo sera el ttyS0 (el primer puerto serie). (Para conectarnos a otro equipo, usaremos el ttyS1)
* /etc/innittab
#
T0:S123:respawn:/sbin/getty -L ttyS0 9600 vt100
# ^
* /etc/securetty
Add a line with ttyS0
—[ Configurar Grub ]————————————————–
Vamos a configurar dos cosas en Grub:
1- Que grub sea capaz de interactuar con el usuario a traves de la conexion serie: para ver el menu de grub desde la consola serie (CLI) [opciones «serial» y «terminal»]
2- Pasaremos al kernel que cargamos desde grub el parametro console=ttyS0, para que este sepa que debe tratar el ttyS0 como la consola (pero ya no el monitor&teclado).
En este ejemplo, tambien he puesto el parametro de kernel panic=30 que permite que el kernel rebote si hace un panic. [Pienso que es mejor especificar este parametro desde el grub a ponerlo con un echo 30 > /proc/… por si se produce un panic en el arranque, antes que que se carge el script de arranque.]
* in /boot/grub/menu.lst
…
serial –unit=0 –speed=9600
terminal –timeout=10 serial console
default=0
title Debian, kernel testing – serial console
root (hd0,0)
kernel /kernel-testing root=/dev/hda3 ro console=ttyS0 panic=30
# ^^^^^^^^^^^^^ ^^^^^^^^
boot
…
Pues ya esta. Una cosa mas, desde un linux, para conectarse por serie a otra maquina, podemos usar el minicom por ejemplo.
Desde un windows, el hyperterminal o el secureCRT por ejemplo.
Alex
Publicado en old.tapiasbravo.com el 7 de octubre de 2004. Recuperado de la Wayback Machine en 2026.