Tarjeta PCI a doble puerto serial DB9

La comunicación por puerto serial en el GNU/Linux moderno

Download PDF

Conéctese a su consola para resolver problemas con Tio, un programa de comunicación serial de GNU/Linux.

Este artículo en específico se rige por la licencia CC-BY que fue asignada por su correspondiente(s) autor(es) o autora(s). Dicha licencia permite así la propagación de este material y su traducción a cualquier idioma. Usted podrá encontrar un resumen de tal licencia en este enlace (en idioma castellano) y la licencia en sí misma de forma completa y totalmente traducida al español en este otro enlace.

Licencia Creative Commons
This article is under License Creative Commons Attribution 4.0 International.

Traducción del idioma inglés al idioma castellano del artículo publicado enOpensource.Com por el sr. Alan Formy-Duval y titulado originalmente «Serial communication on modern Linux».

Como ingeniero de sistemas, paso mucho tiempo en centros de datos configurando servidores y otros equipos informáticos. Dos de los artículos que guardo en mi kit de herramientas son un convertidor de puerto serial RS-232 a USB y un cable de puerto serial DB-9 estándar. Estos pueden ser indispensables cuando no tienes otra forma de acceder a un dispositivo. Es posible que necesite desplegar un nuevo enrutador que aún no ha sido configurado para su red. Es posible que tenga que solucionar el problema de un dispositivo de cortafuegos que se ha vuelto inaccesible a través de SSH. En un entorno de «lights-out» (gestión fuera de banda), en particular, los nuevos servidores pueden tener una tarjeta de administración que necesita ser inicializada. Una conexión en serie proporciona una ruta directa a una consola para realizar estas tareas.

(Alan Formy-Duval, CC BY-SA 4.0)
Convertidor USB a puerto serial, al fondo de color blanco un conector de puerto serial de 9 pines, macho y hembra (Alan Formy-Duval, CC BY-SA 4.0)

Usaré un aparato Netgate en este ejemplo. Estos son cortafuegos que no tienen ratón, teclado, monitor u otras capacidades GUI. Generalmente se les llama «descabezado» (por la analogía de una computadora puede trabajar sin un monitor, siendo esta la «cabeza», N.del T.).

Dispositivo Netgate® (Alan Formy-Duval, CC BY-SA 4.0)
Dispositivo Netgate® (Alan Formy-Duval, CC BY-SA 4.0)

Tabla de contenido:

Comunicaciones por puerto serial

Para conectarse con un dispositivo a través de puerto serial, se necesita un hardware que soporte el protocolo RS-232. Este es típicamente un puerto serial DB-9 de nueve pines, a menudo etiquetado como «serial», «comm» o «console». La mayoría de las computadoras más antiguas tienen al menos uno. La mayoría de los servidores todavía los tienen (incrustados en la tarjeta madre pero solo los pines quedan expuestos, se necesita un cable finalizado con un conectores de 9 pines para llevarlo al exterior del aparato, N del T.), pero la mayoría de las computadoras portátiles y de escritorio ya no.

Encontrando el puerto serial

Si su sistema no tiene ya un puerto serial, necesitará usar un convertidor como el que mencioné. Cuando conecta el conversor PL2303 a un puerto USB de tu ordenador, el núcleo de Linux lo registra como un dispositivo TTY USB.

Hay varios comandos que puedes usar para consultar la configuración del puerto serie de tu sistema. Aquí hay algunos ejemplos:

# dmesg |grep tty
[252464.891372] usb 6-1: pl2303 converter now attached to ttyUSB0

# setserial -g /dev/ttyUSB[0123]
/dev/ttyUSB0, UART: 16654, Port: 0x0000, IRQ: 0

# ls /dev/serial/by-id/
usb-Prolific_Technology_Inc._USB-Serial_Controller_D-if00-port0

En mi caso, detecta el convertidor como un convertidor pl2303 (o un controlador serial USB de Prolific Technology).

Por favor, lea también   Instalación de Shutter en Lubuntu versión 22

Conectando un cable serial

Conecta el cable serie entre el convertidor y el puerto serie del dispositivo.

Parte trasera del dispositivo Negate®(Alan Formy-Duval, CC BY-SA 4.0)
Parte trasera del dispositivo Negate®(Alan Formy-Duval, CC BY-SA 4.0)

Iniciando sesión con Tio

A lo largo de los años, he usado diferentes herramientas, como Minicom y Screen. Tio es una herramienta más nueva y simple descrita como «una simple aplicación de E/S de terminal TTY». Está disponible en la mayoría de las distribuciones de Linux, FreeBSD y OpenWRT, así como en un paquete de Snap para su instalación. Yo utilicé la herramienta del paquete estándar para instalar la versión 1.32 en mi servidor Red Hat Enterprise Linux 8.1:

# dnf info tio
# dnf install tio
Instlación en Ubuntu 18.04: sudo apt install tio
Instalación en Ubuntu 18.04: sudo apt install tio

Inicie la conexión con el comando tio. En mi experiencia, Tio no ha necesitado de ninguna configuración avanzada; funciona una vez está «fuera de la caja» (en idioma inglés se acostumbra trabajar con todo nuevo, oirignal y de fábrica: justo desempaquetar y usar, N.del T.). Asegúrese de que tiene la ruta correcta del dispositivo, tal como se muestra:

# tio /dev/ttyUSB0
# tio /dev/serial/by-id/usb-Prolific_Technology_Inc._USB-Serial_Controller_D-if00-port0
Tio conectado por convertidor de puerto serial a dispositivo Netgate®
Tio conectado por convertidor de puerto serial a dispositivo Netgate® (Alan Formy-Duval, CC BY-SA 4.0)

Puede usar la secuencia de comandos Ctrl+t para interactuar con Tio. Por ejemplo, Ctrl+t y luego ? enumerará los comandos disponibles, y Ctrl+t y luego q cierra Tio y le lleva de nuevo a su símbolo del sistema de comandos de GNU/Linux.


Comando «dmesg | grep tty» y luego ejecución de Tio con convertidor USB a serial y luego con el mismo desconectado.
Comando «dmesg | grep tty» y luego ejecución de Tio con convertidor USB a serial y luego con el mismo desconectado.

Conclusión

Rara vez pensamos o incluso usamos las comunicaciones por puerto serial hoy en día, pero sigue siendo útil. La gente del centro de datos todavía necesita estar familiarizada con él.

Los centros de datos pueden ser remotos, y una vez dentro, querrá usted asegurarse de que tiene todas las herramientas adecuadas. Además de un buen portátil con GNU/ Linux, por supuesto, recomiendo los elementos anteriores para manejar esos dispositivos habilitados para la comunicación en serie cuando sea necesario.


Traducción del idioma inglés al idioma castellano del artículo publicado enOpensource.Com por el sr. Alan Formy-Duval y titulado originalmente «Serial communication on modern Linux».

Este artículo en específico se rige por la licencia CC-BY que fue asignada por su correspondiente(s) autor(es) o autora(s). Dicha licencia permite así la propagación de este material y su traducción a cualquier idioma. Usted podrá encontrar un resumen de tal licencia en este enlace (en idioma castellano) y la licencia en sí misma de forma completa y totalmente traducida al español en este otro enlace.

Licencia Creative Commons
This article is under License Creative Commons Attribution 4.0 International.

<Eso es todo, por ahora>.

Download PDF