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.
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.
# 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:
Posteriormente necesitaremos un disco para esta practica, además de la dirección IP asignada se tendrán que conectar al servidor 132.248.59.66 (o si ya tiene los drivers de las data link), haciendo un ftp anónimo, la sintaxis cuando este dentro de la maquina es la sig. :
#ftp 132.248.59.66
Connected to 132.248.59.66
Luego le pedirá el nombre del usuario:
Name (132.248.59.66 : mena):
El usuario que se aparece es el que se conecta, pero se usara el login anonymous (anónimo)
Name (132.248.59.66: mena): anonymous
passwd: # Login de una cuenta de su maquina
Ahora cambiémonos al directorio pub/dos/win
ftp> cd pub/dos/win
250 CWD command successful
ftp>
Ahora con un ls veremos los archivos que se encuentranftp> ls
200 PORT command successful.
150 Opening ASCII mode data connection for /bin/ls.
total 452
drwxrwxr-x 2 root ftp 1024 Jul 3 17:04 .
drwxr-xr-x 4 root ftp 1024 Jul 3 17:10 ..
-rw-rw-r-- 1 root ftp 4768 Jul 3 17:04 de220pd.com
-rw-rw-r-- 1 root ftp 4951 Jul 3 17:04 de220pd.sys
-rw-rw-r-- 1 root ftp 4768 Jul 3 17:04 de250pd.com
-rw-rw-r-- 1 root ftp 4951 Jul 3 17:04 de250pd.sys
-rw-rw-r-- 1 root ftp 144384 Jul 3 16:58 tcpman.exe
-rw-rw-r-- 1 root ftp 71168 Jul 3 16:58 trmptel.exe
-rw-rw-r-- 1 root ftp 65280 Jul 3 16:58 trumping.exe
-rw-rw-r-- 1 root ftp 935 Jul 3 16:58 trumpwsk.ini
-rw-rw-r-- 1 root ftp 3516 Jul 3 17:04 winpkt.com
-rw-rw-r-- 1 root ftp 159744 Jul 3 17:04 winsock.dll
226 Transfer complete.
ftp>
Ahora traeremos los archivos
ftp> bin
200 Type set to Y. # Transferencia en modo binario
ftp> hash
Hash mark printing on (1024 bytes/hash mark)
señal para que cada 1024 bytes imprima un "#"
ftp> prompt
Interactive mode off. Modo de interacción desactivado
ftp> mget *
# # # # # # # # #
Después de que la transferencia de archivos ha sido completada, nos salimos con el comando exit
ftp>exit
221 Goodbye
#
Después en la maquina cliente creamos un directorio llamado terminal
C:\> mkdir terminal
C:\>
Copiar los archivos a ese directorio :
C:\> cd terminal
C:\terminal> copy a:\*.* .
Ahora entremos a Windows y configuremos el tcpman.exe. En el administrador de programas, en la barra del menú en la opción archivo, buscamos la opción ejecutar , luego encontramos la opción examinar y en el directorio que creamos (llamado terminal) busquemos el archivo tcpman.exe , después aceptar
Lo que se hará posteriormente es configurar este programa con lo que debemos saber:
- La dirección IP de la maquina
- Dominio de la red
Cuando abrimos el archivo nos vamos al menú y buscamos la opción file y posteriormente la opción setup y ahí se hará la configuración, en la primera fig. es un aproximación de lo que sale, y en la otra figura es como debe quedar.
Después de darle OK, nos pedirá que cerremos el programa para que lo pueda configurar, pero además saldremos de Windows para cargar los sig., paquetes:
C:\terminal>de2#0pd 0x69 Es el manejador de la tarjeta y el signo " # " es el tipo de tarjeta que tiene esa maquina.
C:\terminal>set ip=xxx.yyy.zzz.www Es la dirección IP de la maquina en que estas trabajando.
C:\terminal>winpkt 0x69 Es la conexión con sockets para Windows
Después entremos otra vez a Windows y abramos el archivo tcpman.exe, posteriormente se verá la configuración que se hizo antes de salir, y posteriormente se abrirá el archivo trmptel, que se encuentra en el mismo lugar que tcpman, con los que nos aparecerá una ventana que nos dice :
Con ello le daremos la dirección del sevidor correspondiente y cuando haga la conexión con el servidor se dará por terminada la practica de como conectarse al servidor en una terminal de Windows.
CUESTIONARIO:
NOTA: Usar la ayuda en línea para resolver dudas sobre las opciones de los comandos.
1.- Cuales son los nombres (device files) de los puertos seriales ?
2.- Cuales son los números mayor y menor de los dispositivos seriales ?
3.- Qué es 'getty' ?
4.- Escriba la configuración del cable serial que utilizo para la práctica.
5.- Para la realización de esta práctica indique que puerto serial utilizo tanto para el servidor como para la terminal.
6.- Qué es y para que sirve el programa ST240 ?
7.- Cuál es el propósito de agregar la etiqueta "S0" en el archivo '/etc/inittab' ?
8.- Cuál es el propósito de ejecutar el comando 'telinit q' después de modificar el archivo '/etc/inittab' ?
9.- Cuál es el propósito de agregar la etiqueta 'DT9600' en el archivo '/etc/gettydefs' ?
10.- Cuál es el propósito de agregar la opción 'vt100' en el comando '/sbin/getty ttyS0 DT9600 vt100' de la etiqueta 'S0' en el archivo '/etc/inittab' ?
CONCLUSIONES.