Reutilizar viejos ordenadores. Terminales X

Pedro González Ruiz

Introducción

Éste artículo es muy antiguo. Fue el primero que coloqué en esta Web. Desde entonces hasta aquí, la informática ha avanzado mucho, pero las ideas contenidas siguen siendo válidas. Si quiere aprovechar ordenadores antiguos, lo que se muestra será de gran utilidad. A continuación se expone el contenido original.

Resumen

Este artículo pretende documentar y explicar mis experiencias en el aula de Informática del IES Pino Montano de Sevilla relativas a usar viejos ordenadores como terminales X.

Estado del aula

Es el siguiente:

Todos los ordenadores están conectados en red local mediante un router, el cual a su vez está conectado a una línea ADSL.

Hasta el curso escolar anterior (2002-2003) los ordenadores tenían instalado Windows 98, salvo los del apartado primero que tenían Windows 95. A partir de este punto los ordenadores de los apartados primero y segundo serán llamados antiguos mientras que los del apartado tercero serán llamados nuevos.

La navegación por Internet para los antiguos era insoportablemente lenta, por lo cual había que establecer turnos entre los alumnos, ya que todos querían, como es natural, los nuevos.

Si algún profesor o responsable de un aula de informática se encuentra en situación parecida a la anterior, puede mejorar muchísimo el rendimiento de los ordenadores, haciendo depender los antiguos de los nuevos, mediante el concepto de terminal X. Las siguientes secciones explican cómo lo he hecho yo. Cada persona deberá adaptar lo que aquí se expone a su caso concreto.

¿Qué es un terminal X?

Un terminal X es un ordenador que ejecuta programas situados en otro ordenador, que para simplificar en esta sección, llamaremos servidor. Observe la siguiente figura:

Mediante el procedimiento adecuado que más adelante especificaremos, desde terminal1 a través de la red entramos en servidor1, con lo cual, una persona sentada delante de terminal1 lo verá todo a la velocidad de servidor1. Por ejemplo, si servidor1 es un ordenador de los nuevos y terminal1 es el 486 DX2 del apartado primero, entonces el alumno que esté sentado en éste, lo verá comportarse como un Pentium III a 930 Mhz. Por poner una analogía, es como si pusiéramos a una persona de 80 años en un cuerpo de 20.

Casi nada de lo que observe en terminal1 está ocurriendo realmente allí. Todo ocurre en servidor1. Entendámoslo con un ejemplo:

  1. El usuario que está en terminal1 hace click en un punto determinado de la pantalla.
  2. Esta acción es enviada a servidor1 a través de la red, y éste procesa el suceso. Si el click se ha hecho en una zona de la pantalla, que, por ejemplo, corresponde a desplegar un menú, el menú es desplegado, la señal es mandada a terminal1, y la pantalla de éste es actualizada.

En fin, el efecto final es que todo parece que está ocurriendo delante de uno mismo.

Para poder hacer lo anterior, es necesario que el sistema operativo instalado en servidor1 sea multiusuario, lo cual deja fuera a Windows y dentro a Linux.

Probé varias posibilidades, desde instalar un Linux dentro de los Windows existentes, vía loadlin hasta los medios del excelente proyecto LTSP, el cual funcionó bien, salvo el último paso, la configuración de las X-Windows, en la cual no conseguí que el monitor se comportara como debía. Como ha pasado un año, este proyecto habrá mejorado y no hay que descartar volver a él más adelante. El problema radica en que una vez encontrada una solución buena, no se molesta uno en buscar otras. En fin, los detalles de la instalación se exponen a continuación.

Linuxs a instalar

En los 486

Lo primero fue borrar Windows 95. Después, y debido a los recursos limitados de estos ordenadores, instalé un Linux Slackware versión 3.4 del año 1998, núcleo 2.0.30, que venía con el libro Manual avanzado de Linux de Raúl Montero Rivero, ediciones Anaya Multimedia. Una vez instalado, incluyendo las X-Windows, programas de red, entornos gráficos, incluso TeX y todos sus auxiliares, el espacio ocupado es del 42%.

Si el lector está interesado en esta posibilidad y en esta versión, busque en Internet, por ejemplo, en Google, la frase Slackware 3.4, y encontrará bastantes versiones de esta distribución.

Al montar el sistema operativo, la tarjeta de red no es reconocida por el núcleo y aparece el mensaje

network is unreachable

En otras palabras, que no hay red. La razón es que no detecta la tarjeta de red, la RealTek RTL-8029. No es necesario compilar el núcleo, sino basta hacer lo siguiente: editar /etc/rc.d/rc.modules. Descomentar la línea

#/sbin/modprobe ne io=0xNNN
      
y poner lo siguiente:
/sbin/modprobe ne io=0xfce0
      

En el siguiente arranque coge la IRQ 9 y ya la red funciona perfectamente. Tampoco es necesario reiniciar el ordenador, pues basta con ejecutar en línea de órdenes lo anterior.

En los Pentium a 75 Mhz

Como en los 486, lo primero fue borrar Windows 98. Después instalé Suse Linux versión 6.0, del año 1999, núcleo 2.0.36. La Slackware anterior es más rápida a la hora de instalar y de arrancar aunque la configuración del ordenador (ratón, monitor, teclado, etc.) es mucho más sencilla en Suse debido a las utilidades yast y sax. Más aún, los archivos de configuración de las X-Windows fueron copiados sin más a los 486, funcionando estos perfectamente, ya que la compatibilidad es total en cuanto al monitor, ratón y teclado. La tarjeta de red RealTek RTL-8029 fue reconocida sin ningún problema por Suse 6.0.
Una vez instalado el sistema con programas similares a los anteriores, el espacio ocupado es del 45%.

En los Pentium III

Como antes, después de borrar Windows 98 completamente, instalé en cada uno de ellos una Suse versión 8.1 del año 2003, núcleo 2.4.19. Esta distribución, así como la anterior 6.0 no son gratuitas. Nuestro instituto compró ambas en su momento. No obstante, el lector puede encontrar otras que sí lo sean. En el momento en que se escriben estas notas, estoy utilizando en mi casa Mandrake 9.2, la cual es gratuita, muy buena y superior a Suse 8.1, entre otras razones porque es posterior a esta última.
Otras alternativas gratuitas son debian, Linex (Linux de la comunidad extremeña) y Guadalinex (de la comunidad andaluza).

Configuración de una red en Linux

Configurar una red en Linux conectada al exterior mediante una línea ADSL es extremadamente sencillo. El procedimiento a seguir es el siguiente:

Todo esto debe hacerlo en cada ordenador de la red. A continuación cree un archivo de texto con la información de todas las IPs de los ordenadores con el siguiente formato:

172.26.0.2    servidor1.aula-de-informatica    servidor1
172.26.0.3    servidor2.aula-de-informatica    servidor2
....
172.26.0.10    terminal1.aula-de-informatica    terminal1
....
      

e insértela al final del archivo /etc/hosts. Por ejemplo, si el archivo de texto anterior es ordenadores, introduzca la orden:

cat ordenadores >> /etc/hosts
      

Si no le gusta el método anterior edite /etc/hosts con su editor preferido e inserte ordenadores al final.

Podríamos disponer de un único ordenador que actuara de DNS para toda la red local y evitar el tener que copiar todos estos datos a todos los ordenadores, pero eso implicaría tener ese ordenador siempre encendido. Por otro lado el proceso anterior de copiar los datos no nos lleva más de una hora.

Una vez hecho lo anterior, sitúese en cualquier ordenador e introduzca:

ping servidor1
ping servidor2
....
ping terminal1
....
      

Si recibe respuesta de todos, es síntoma de que la red funciona bien a nivel interno. Prueba ahora:

ping ftp.rediris.es
ping www.nasa.gov
      

Si también recibe respuesta, es síntoma de que la red funciona bien a nivel externo. Vaya probando las verificaciones anteriores en varios ordenadores hasta asegurarse del buen funcionamiento de todos los nodos.

Configuración de los servidores (Pentium III) para que acepten peticiones remotas

Decimos como hacerlo tanto para Suse 8.1 como para Mandrake 9.2. En cada servidor hacer lo siguiente:

Suse 8.1

Como root y con yast2 seguimos la siguiente secuencia de pasos:

Sistema --> Editor para /etc/sysconfig --> Base-Administration --> Display -->
displaymanager_remote_access
      

Lo ponemos a sí y ya debe funcionar. Como kdm está funcionando no coge este cambio. Así es que tenemos dos posibilidades:

Mandrake 9.2

Ahora o reiniciamos o hacemos lo explicado antes relativo a los cambios entre init 3 e init 5.

Asalto final. Ver el funcionamiento

En el Linux local de cada terminal (Slackware 3.4 o Suse 6.0) cree una cuenta pública para que tanto Vd. como cualquier alumno pueda utilizar y entre en dicha cuenta. Sobreentendemos que dicha entrada la hace en modo texto. Si entró en un 486 (Slackware 3.4), escriba:

X -query servidor1
	

Si todo ha ido bien, ha debido de entrar en servidor1. Como es natural, tendrá que tener cuenta en éste para poder hacer algo.
Si entró en un Pentium 75 (Suse 6.0), escriba:

Xwrapper -query servidor1
      

y, como antes, si todo ha ido bien, habrá entrado en servidor1. Debe resultar evidente que puede entrar en cualquiera sin más que cambiar servidor1 por servidor2, servidor3, etc.

La siguiente fotografía muestra un 486 ejecutando KDE 3.0, la hoja de cálculo Calc y el procesador de textos Writer del paquete Openoffice versión 1.1, así como un emulador de terminal.

Por último, decir que el responsable del aula debe repartir las cuentas de los alumnos entre los servidores, de forma tal que no se dé el caso de que en un momento determinado haya, por ejemplo, 3 usuarios colgados de un ordenador y ninguno de otro.

Razones profesionales para utilizar Linux en lugar de Windows en un aula de Informática

  1. No hay protección en Windows contra la mala fe o el despiste. Si un alumno, en un ordenador borra un programa necesario para el desarrollo de las clases, deja ese ordenador inservible para las clases posteriores. Por tanto, el profesor encargado debe volver a montar el programa, y si el desperfecto es grande, hay que volver a instalar Windows. Esto supone una pérdida de tiempo considerable que con Linux se ha resuelto, pues ningún alumno puede borrar archivos importantes del sistema, debido a las restricciones que impone éste.
  2. Cuando funcionábamos bajo Windows, cada alumno estaba limitado a un determinado ordenador, en el cual se encontraban sus datos. Ahora no, gracias a Linux, puede entrar en su cuenta desde cualquier ordenador.
  3. Con Windows, teníamos prohibido a cada alumno la personalización del escritorio (imágenes de sus cantantes favoritos, equipos de futbol, hermandades sevillanas, etc) puesto que los que vinieran después se encontraban con esas imágenes. Ahora no, todo lo contrario, se fomenta, puesto que dichas alteraciones son locales.
  4. Con Windows, cualquier alumno podía descargar cualquier programa de Internet e instalarlo. Ahora no, porque dichos programas no funcionan en Linux. Aún siendo de éste último, podrían instalarlo, pero de modo local (siempre y cuando el programa lo permita) con lo cual no harían daño al sistema.
  5. El número de instalaciones de programas se ha dividido por 2 o más, puesto que de un ordenador cuelgan 2 o más usuarios, y no como antes en que había que montar el mismo programa en todos los ordenadores. También hay que decir que realmente sólo haría falta instalarlo una vez nada más y para todos los ordenadores mediante NFS, pero el miedo a que se estropeara el principal me frenó.

Contacto

Si desea hacer algún comentario, utilice la siguiente dirección de correo:

Pedro González Ruiz
Fecha de creación: 30 de enero de 2004
Fecha de la última modificación: 23 de octubre de 2015

ir a la página principal