PRACTICA #10

"MANEJO DE TERMINALES"



OBJETIVO: Aprender a conectar y configurar una terminal tonta.



INTRODUCCIÓN:

Los dispositivos correspondientes a los cuatro puertos seriales son:

/dev/cua0, /dev/ttyS0 (COM1) dirección 0x3f8 IRQ 4

/dev/cua1, /dev/ttyS1 (COM2) dirección 0x2f8 IRQ 3

/dev/cua2, /dev/ttyS2 (COM3) dirección 0x3e8 IRQ 4

/dev/cua3, /dev/ttyS3 (COM4) dirección 0x2e8 IRQ 3



Los números mayor y menor de los dispositivos seriales en /dev son:

/dev/ttyS0 mayor 4, menor 64 /dev/cua0 mayor 5, menor 64

/dev/ttyS1 mayor 4, menor 65 /dev/cua1 mayor 5, menor 65

/dev/ttyS2 mayor 4, menor 66 /dev/cua2 mayor 5, menor 66

/dev/ttyS3 mayor 4, menor 67 /dev/cua3 mayor 5, menor 67

'getty' es un programa que maneja el proceso de login cuando accedamos a una caja de Unix. Hay tres versiones que son comúnmente usadas en Linux: 'agetty', 'getty_ps' y 'mgetty'.

'getty_ps' es una versión de 'getty' y fue escrita por Paul Sutcliffe Jr., Kris Gleason. El paquete de 'getty_ps' contiene dos getties. El 'getty' es usado para las consolas y dispositivos de terminal - y 'uugetty' es usado para modems.

'mgetty' es una versión de 'getty' escrita por Gert Doering. Además de manejar el proceso de login, 'mgetty' provee soporte para fax a través de 'sendfax', el cual acompaña al 'mgetty'. mgetty+sendfax 0.22 son la ultima versión de este paquete.

'agetty' es la tercer variación de 'getty'. Este fue escrito por W.Z. Venema. Este es una simple implementación de 'getty'.





DESARROLLO:

Requerimientos de Hardware

Dependiendo del tipo de puerto serial vamos a necesitar conectores DB25 o DB9 hembra, la forma de configurar los conectores es la siguiente:

Para dos conectores DB25:

TxD Transmite Dato 2 - 3 RxD Recibe Dato

RxD Recibe Dato 3 - 2 TxD Transmite Dato

SG Señal de Tierra 7 - 7 SG Señal de Tierra



Para dos conectores DB9:

RxD Recibe Dato 2 - 3 TxD Transmite Dato

TxD Transmite Dato 3 - 2 RxD Recibe Dato

SG Señal de Tierra 5 - 5 SG Señal de Tierra



Para un conector DB9 y un conector DB25:

RxD Recibe Dato 2 - 2 TxD Transmite Dato

TxD Transmite Dato 3 - 3 RxD Recibe Dato

SG Señal de Tierra 5 - 7 SG Señal de Tierra



Como cada computadora tiene dos puertos seriales se pueden dar las siguientes combinaciones de conexión:

Servidor Terminal

COM1 COM1

COM1 COM2

COM2 COM1

COM2 COM2



NOTA: Esta practica fue realizada tomando en cuenta la primera combinación COM1 - COM1, si se utiliza una combinación de puertos diferente se deben realizar los cambios pertinentes.



  1. Arrancar el Servidor de Linux.


  2. En la computadora que va a quedar como terminal cargar el programa que emula una PC como terminal tonta. Tener copiado el programa en un disco de 3.5" de DD. Este programa se encuentra en el servidor linux1 vía ftp anonimo y se encuentran en la sig. ruta de Internet

ftp://linux1.fi-b.unam.mx:/pub/linux/terms/st240 .



A:\>st240



a. Seleccionar la opción 1:Serial1 para aceptar la conexión a través del puerto serial 1, o

b. Seleccionar la opción 2:Serial2 para aceptar la conexión a través del puerto serial 2.



La computadora estará en espera de datos.

  1. En la computadora que se encuentra como servidor teclear el siguiente comando para comprobar que existe comunicación.


# cat /etc/issue > /dev/ttyS0

NOTA: Se asume que el servidor se comunicara con la terminal a través del puerto serial 1 (COM1), que Linux lo conoce como /dev/ttyS0



Si esta bien configurado el cable y el programa emulador de terminal esta aceptando datos por el puerto que tiene conectado el cable, en la terminal debe de aparecer un mensaje similar a este:



Red Hat Linux release 4.0 (Colgate)

kernel 2.0.18 on an i586



4. Para dar de alta una terminal en el servidor se modifican los siguientes archivos.

a. /etc/gettydefs las modificaciones son las siguientes:



# 38400 bps Dumb Terminal entry

DT38400# B38400 CS8 CLOCAL # B38400 SANE -ISTRIP CLOCAL #@S @L login: #DT3840

# 19200 bps Dumb Terminal entry

DT19200# B19200 CS8 CLOCAL # B19200 SANE -ISTRIP CLOCAL #@S @L login: #DT1920

# 9600 bps Dumb Terminal entry

DT9600# B9600 CS8 CLOCAL # B9600 SANE -ISTRIP CLOCAL #@S @L login: #DT9600



Nota: Si no existen éstas líneas habrá que capturarlas.



b. /etc/inittab las modificaciones son las siguientes:

S0:23456:respawn:/sbin/getty ttyS0 DT9600 vt100



5. Una vez que se han hecho modificaciones en el /etc/inittab es necesario que init lea nuevamente su archivo de configuración. Teclear el siguiente comando:

# init q



o bien:

# telinit q



6. Comprobar que el comando 'getty' este corriendo. Debe encontrarse una linea similar. Tecleamos el siguiente comando:

# ps -ax | grep ttyS0

519 S0 S 0:00 /sbin/getty ttyS0 DT9600 vt100



Si el proceso ha sido creado por init, se obtendrá la salida anterior con lo que se concluye que el proceso de la terminal que acabamos de dar de alta se encuentra operando,

NOTA: El PID puede ser distinto.



7. La terminal se encuentra en espera del login y password del usuario, teclear uno o dos enter's para establecer la comunicación. En la pantalla debe aparecer algo similar a lo siguiente:



Red Hat Linux release 4.0 (Colgate)

kernel 2.0.18 on an i585

Sol



8. Probar que la configuración y conexión es correcta entrando a sesión como usuario normal. Por ejemplo:



sol apollo

Password:



Last login: Tue Nov 26 18:13:17 on ttyS0

apollo@sol apollo$



9. Para entrar como root agregar al archivo /etc/securetty la siguiente línea:



ttyS0



10. Desde la terminal entrar como super usuario.

Configuración de un terminal con plataforma Windows.



Después de haber logrado con éxito la conexión bajo terminales, ahora se hará con una tarjeta de red y bajo Windows 3.11. Ahora la sig. cuestión es saber que tarjeta tiene la maquina:



En esta sala hay 2 tipos: