Logo de AulaDigital

Serie Como 7

Serie COMO de Linux: ¿Cómo puedo tener un terminal conectado a mi PC? Anterior Siguiente Indice

7. ¿Cómo puedo tener un terminal conectado a mi PC?

Las instrucciones de esta sección sirven para la conexión de terminales, así como otros ordenadores a un puerto serie de su sistema Linux.

7.1 Hardware requerido

Asegúrese de tener el cable correcto. Un cable de módem nulo comprado en cualquier tienda de informática puede valer. ¡Pero debe ser un cable de modem nulo!. Muchas tiendas de informática venden este tipo de cable como cable serie de impresora. Asegúrese de estar usando el puerto serie, el DB25 o el DB9 macho, y no el puerto paralelo (DB25 hembra o Centronics).

Para un conector DB25, necesita como mínimo:

DB25 macho en el PC                     DB25 en el Terminal
TxD   Transmision de datos  2 --> 3     RxD   Recepcion de datos
RxD   Recepcion de datos    3 <-- 2     TxD   Transmision de datos
SG    Tierra                7 --- 7     SG    Tierra

Si quiere tener señales de sincronización del hardware, debe tener un cable completo de módem nulo:

DB25 macho del PC                       DB25 del terminal
TxD  Transmision de datos   2 --> 3     RxD  Recepcion de datos
RxD  Recepcion de datos     3 <-- 2     TxD  Transmision de datos
RTS  Peticion de envio      4 --> 5     CTS  Listo para envio
CTS  Listo para envio       5 <-- 4     RTS  Peticion de envio
DSR  Modem listo            6
                            |
DCD  Deteccion de portadora 8 <-- 20    DTR  Terminal listo
SG   Tierra                 7 --- 7     SG   Tierra
                                  6     DSR  Modem listo
                                  |
DTR  Terminal listo        20 --> 8     DCD  Deteccion de portadora

Si tiene un conector DB9 en el puerto serie, intente lo siguiente:

DB9 del PC                              DB25 del terminal
RxD  Recepcion de datos     2 <-- 2     TxD  Transmision de datos
TxD  Transmision de datos   3 --> 3     RxD  Recepcion de datos
SG   Tierra                 5 --- 7     SG   Tierra

Alternativamente, un cable completo DB9-DB25 de módem nulo:

DB9 del PC                              DB25 del terminal
RxD  Recepcion de datos     2 <-- 2     TxD  Transmision de datos
TxD  Transmision de datos   3 --> 3     RxD  Recepcion de datos
                                  6     DSR  Modem listo
                                  |
DTR  Terminal listo         4 --> 8     DCD  Deteccion de portadora
GND  Tierra                 5 --- 7     GND  Tierra
DCD  Deteccion de portadora 1
                            |
DSR  Modem listo            6 <-- 20    DTR  Terminal listo
RTS  Peticion de envio      7 --> 5     CTS  Listo para envio
CTS  Listo para envio       8 <-- 4     RTS  Peticion de envio
(RI  Indicador de llamada   9, no se necesita)

(Efectivamente, ¡los pins 2 y 3 realmente tienen significados opuestos en los conectores DB9 a los que tienen en los conectores DB25!)

Si no está usando un cable completo de módem nulo, deberá hacer el siguiente truco: en la parte del conector que va al ordenador, conecte juntos RTS y CTS, y además conecte juntos DSR, DCD y DTR. De este modo, cuando el ordenador busque una cierta señal de sincronismo, la cogerá (de él mismo).

Ahora que tiene el tipo de cable adecuado, conecte el terminal al ordenador. Si puede, dígale al terminal que ignore las señales de control de módem. Pruebe a configurar el terminal a 9600 bps, 8 bits de datos, 1 bit de parada y sin bit de paridad.

7.2 Configurando getty

Añada las siguientes entradas en /etc/gettydefs para usar getty en su terminal, si todavía no están allí:

# Entrada para un terminal no-inteligente a 38400 bps
DT38400# B38400 CS8 CLOCAL # B38400 SANE -ISTRIP CLOCAL #@S @L login: #DT38400

# Entrada para un terminal no-inteligente a 19200 bps
DT19200# B19200 CS8 CLOCAL # B19200 SANE -ISTRIP CLOCAL #@S @L login: #DT19200

# Entrada para un terminal no-inteligente a 9600 bps
DT9600# B9600 CS8 CLOCAL # B9600 SANE -ISTRIP CLOCAL #@S @L login: #DT9600

Si lo desea, puede hacer que getty imprima cosas interesantes en el mensaje de login. En los ejemplos, imprime el nombre del sistema y la línea serie. Puede añadir más cosas:

@B    Velocidad actual en bps (calculada en el momento que se lee @B).
@D    Fecha actual, en MM/DD/AA.
@L    Linea serie a la cual esta conectado getty.
@S    Nombre del sistema.
@T    Hora actual, en HH:MM:SS (24 horas).
@U    Numero de usuarios actualmente conectados. Esto es, el numero
      de entradas en el fichero /etc/utmp que tienen un campo ut_name
      no nulo.
@V    Valor de VERSION, dado en el fichero de opciones por defecto.
Para que se vea el caracter '@', use '\@' o '@@'.

Asegúrese de que no existe un fichero de configuración de getty o uugetty para el puerto serie al que está conectado el terminal (/etc/default/{uu}getty.ttySN o /etc/conf.{uu}getty.ttySN), ya que probablemente esto interferirá si ejecuta getty en un terminal. Borre el fichero si existe.

Edite el fichero /etc/inittab para ejecutar getty en un puerto serie (substituya la información por la correcta para su entorno - puerto, velocidad, y tipo de terminal por defecto):

S1:456:respawn:/sbin/getty ttyS1 DT9600 vt100

Vuelva a ejecutar init:

linux# init q 

Ahora, debería estar viendo una petición de login en el terminal. Debe pulsar return para conseguir la atención del terminal.

7.3 Notas sobre cómo configurar un PC como terminal

Mucha gente configura otros PCs como terminales conectados a un sistema Linux. Por ejemplo, un viejo 8088 u 80286 es perfecto para este propósito. Todo lo que necesita es un disco de arranque de DOS que contenga una versión de DOS apropiada para un terminal-PC, y un programa de comunicaciones para ejecutar en el terminal-PC.

kermit funciona muy bien para esto. Puede encontrar versiones precompiladas de kermit para casi todos los SO que existen en ftp://watsun.cc.columbia.edu/pub/ftp/kermit. Otros programas de comunicaciones populares de DOS, como Telix y procomm funcionan igual de bien. Asegúrese de introducir la información del puerto serie en la configuración de comunicaciones del terminal-PC.


Anterior Siguiente Indice