Introducción al uso del servidor de prácticas "hendrix"

Índice

  1. Índice
  2. Introducción
  3. Resumen de funcionalidades
  4. Normas de uso de los servidores
  5. Sobre las quotas de disco
  6. Trabajo remoto L1.02
  7. Funcionalidades detalladas

Introducción

En este documento se intentará dar una visión general del servidor de prácticas del DIIS (en adelante "hendrix") y de sus posibilidades en cuanto al uso cotidiano por parte los miembros del departamento y los estudiantes, evitando cuestiones excesivamente técnicas.

Es decir se intentará responder a la pregunta: Bueno, ya tengo cuenta en "hendrix", y ahora, ¿que hago?

Básicamente este es un servidor en el que tienen cuenta todos los alumnos relacionados con el DIIS. Esta cuenta permanecerá activa mientras dure esta relación; permitiendo la realización de prácticas y el almacenamiento permanente de ficheros.

Nota importante: No hay que confundir "hendrix", el nuevo servidor, con el antiguo "hendrix" SparcStation 5. Este último estuvo en marcha hasta el curso 2010-2011.

hendrix "viejo" "hendrix"

El usuario puede acceder a los siguientes servidores de prácticas:


Resumen de funcionalidades

Entre las muchas funcionalidades del sistema, nos centraremos en las que afectan directamente al usuario básico:


Normas de uso de los servidores

La utilización de los recursos informáticos del DIIS supone la aceptación de las siguientes normas:

  1. Sobre utilización de recursos de almacenamiento:

    1. El usuario deberá utilizar un espacio total de almacenamiento adecuado a su trabajo relacionado con las prácticas de asignaturas impartidas por el DIIS. Actualmente, salvo excepciones justificadas, como puedan ser el uso de máquinas virtuales, se considera un volúmen razonable 500 MB.
    2. El usuario no deberá almacenar ficheros de uso personal de gran tamaño (típicamente, películas, música, etc).
    3. El usuario no deberá utilizar su espacio de almacenamiento para instalar software que desee utilizar en los ordenadores del DIIS. En caso de necesitar software que no esté ya instalado, deberá solicitar su instalación por los cauces establecidos. (Principalmente, a través de su profesor de prácticas).
    4. El usuario se responsabilizará de borrar ficheros temporales, cachés, etc. que no sea necesario almacenar de forma perdurable.
    5. Cualquier archivo detectado como "malware" puede ser borrado sin previo aviso.
    6. El trabajo con máquinas virtuales utilizará los recursos específicos asignados para ello. No se considera apropiado utilizar el directorio personal ("$HOME") para almacenar imágenes de disco de máquinas virtuales.
    7. No se recomienda el uso de Dropbox en los ordenadores del prácticas, de hecho no está instalado. Su uso indiscriminado conduce con facilidad al uso excesivo de espacio de almacenamiento.
    8. El uso incorrecto del almacenamiento puede suponer la eliminación de ficheros por parte de los administradores del sistema.
  2. Sobre utilización de recursos de red:

    1. El usuario limitará su utilización del ancho de banda de la Universidad a lo necesario para la realización de las prácticas.
    2. Otros usos de la red se deberán regir por la normativa general de la Universidad al respecto. (Ver más abajo).
  3. Sobre utilización de recursos de CPU:

    1. El usuario no deberá dejar en marcha procesos que acumulen un tiempo de CPU excesivo salvo que esté requerido por la práctica. En este caso, el profesor deberá informar previamente a los administradores del sistema. Cualquier proceso de usuario que acumule un tiempo de CPU superior a 24 horas puede ser terminado sin previo aviso.
    2. En el caso de instancias personales de gestores de bases de datos, el usuario debe "apagar" la instancia cuando termine su sesión de trabajo. De otra forma, la instancia puede ser terminada por el sistema operativo sin previo aviso, con el consiguiente riesgo para la consistencia interna de la base de datos.
    3. Cualquier proceso que suponga un problema para el trabajo del resto de los usuarios puede ser terminado sin previo aviso.
  4. Generales:

    1. La cuenta de usuario es personal e intransferible.
    2. El usuario se compromete a salvaguardar la privacidad de su cuenta mediante el uso de contraseñas seguras, protocolos cifrados y buenas prácticas en el uso de los sistemas.
    3. El usuario se compromete a no establecer mecanismos de acceso alternativos a los recursos informáticos.
    4. El usuario se compromete a no intentar subvertir los mecanismos de seguridad establecidos ni aprovechar posibles deficiencias en los mismos para obtener mayores privilegios o para acceder a recursos a los que legítimamente no tenga acceso.
    5. El DIIS se reserva el derecho de monitorizar el uso de los recursos informáticos, dentro de los márgenes previstos por la legalidad vigente, para garantizar un funcionamiento óptimo de los mismos.
    6. Para otros casos no explicitados aquí, se aplicará la normativa general de la Universidad de Zaragoza

Sobre las quotas de disco

El uso de disco se controla mediante un mecanismo de "quota". Esto significa que un usuario puede utilizar más espacio que el que tiene asignado durante un periodo máximo de 7 días. Una vez agotado el plazo, no podrá escribir ficheros hasta que no vuelva a estar por debajo de su "quota". Esto puede suponer que si p.e. se está editando un fichero en situación de "sobre-quota", se pierda ese fichero al intentar guardarlo.

Si un alumno necesita más "quota" para realizar cierta práctica deberá comunicárselo a su profesor, para que este solicite un aumento de "quota" para sus alumnos.

Se ha habilitado un mecanismo que permite al usuario borrar (bajo su responsabilidad) ficheros temporales y prescindibles. La forma de ejecutarlo es:

	- Hacer login en hendrix-nfs
	- Ejecutar

		/usr/local/etc/clean_home -A $HOME

	- Con esto, no se borra nada, pero permite ver los ficheros
	que se borrarían.

	- También se puede ejecutar

		/usr/local/etc/clean_home -l
		Para obtener un listado de directorios ordenados por tamaños.

	- Una vez revisado lo que se puede borrar, se puede ejecutar

		/usr/local/etc/clean_home -A -y $HOME

		para hacer efectivo el borrado.

	- Para ver más opciones, ejecutar:

		/usr/local/etc/clean_home -h

	

Nota: algunas situaciones típicas son el no vaciar la papelera y tener ahí ficheros borrados de hace mucho tiempo, y el tener gran parte del espacio utilizado por las cachés de los navegadores.

Se recomienda vaciar la papelera habitualmente, y configurar los navegadores web para que no utilicen caché de disco. (usando el menú de ajustes/preferencias del navegador utilizado)


	Anexo: Listado de directorios típicos que ocupan mucho espacio
	con ficheros prescindibles (referidos a $HOME):

	.local/share/Trash
	.cache/google-chrome
	.eclipse # Directorios correspondientes a varias versiones

	Otros: Ver código fuente de /usr/local/etc/clean_home
	(es un script en sh)

	

Trabajo remoto L1.02

Durante el curso 2020-21 con el aumento de las prácticas no presenciales se han puesto en marcha mecanismos para facilitar este trabajo. El L1.02 reune unas condiciones especiales.

Por ello se explica el tema en una página aparte:
Trabajo remoto en L1.02


Funcionalidades detalladas

Servicios de redundancia y copia de seguridad

Existen copias de seguridad de los datos almacenados, aunque su finalidad principal es la posibilidad de recuperación frente a desastres, no la recuperación de ficheros individuales perdidos por error del usuario.

No obstante, en casos excepcionales, se puede considerar esta segunda opción.

En caso de que se desee recuperar información el procedimiento consiste en enviar un correo a backup_at_daphne.cps.unizar.es indicando:

Nota: no se realiza copia de las imágenes de disco utilizadas con máquinas virtuales.

En cuanto a los servicios de redundancia, son manejados directamente por el hardware y garantizan que no habrá pérdida de información en caso de fallo de un disco.


Servicios de autentificación centralizados

Este servicio permite que el usuario tenga un único punto de gestión de contraseña, tanto para servicios de Unix (login en sistemas Unix) como de Windows (acceso a recursos compartidos).

La gestión de cuentas la realiza el propio servidor. En caso de que el usuario también tenga cuenta en el servidor principal del DIIS, se recomienda que no utilice la misma contraseña.

El sistema de gestión y cambio de contraseña será:

Es posible cambiarse el shell utilizando:

Conviene notar que cuando se hace login en Linux con el sistema gráfico por defecto, normalmente los terminales que se ejecutan no utilizan un "login shell" por defecto. Esto significa que muchas variables de entorno necesarias no se inicializan. La solución consiste en cambiar las preferencias del terminal para que por defecto utilice un "login shell".

En gnome-terminal:

	Menu->Edit->Preferences->Profiles->Edit->Command:
		[x] Run command as a login shell
	Menu->Edit->Preferences->Profiles->Edit->Compatibility:
		Backspace key generates -> Control-H


En gnome-terminal (versiones anteriores a CentOS 7):

	Menu->Edit->Profiles->Default->Title and Command:
		[x] Run command as a login shell

Servicios de centralización de datos del usuario ("Home")

Cada usuario dispone de un espacio fijo para datos personales de importancia crítica, limitado por las cuotas del sistema. Ese espacio se utiliza como directorio personal (HOME) en los clientes Unix gestionados por el DIIS. Además puede acceder desde Windows/MacOS o sistemas Linux personales usando el protocolo CIFS (en Windows, el típico "entorno de red").

La forma de acceder a este recurso es:


Servicios uso interactivo ("shell")

Forma de acceso:

    ssh hendrix-ssh.cps.unizar.es
    
Nota: También es posible hacer ssh a los nodos individuales hendrix01 y hendrix02, pero la primera forma proporciona un balanceo de carga automático.

Aviso:

Puede ocurrir que accediendo mediante versiones recientes de clientes ssh de un error del tipo:

Unable to negotiate with XXXXXXXX port 22: no matching cipher found.
o
Unable to negotiate with XXXXXXXX port 22: no matching matching key exchange.

Normalmente eso es debido a que el cliente ssh utilizado ha deshabilitado por defecto lo que considera protocolos "inseguros". En servidores del DIIS antiguos es probable que el servidor SSH tarde en poder ser actualizado. En esos casos, lo mejor es volver a habilitar esos protocolos en el cliente solo para esos casos. Crear un fichero ~/.ssh/config que contenga:

Host hendrix*
        ForwardX11Trusted       yes
        ForwardX11      yes
        Ciphers aes128-ctr,aes256-cbc
        KexAlgorithms +diffie-hellman-group-exchange-sha1

Ver también: https://www.openssh.com/legacy.html

Notas:


Servicios para Windows ("PDC")

La cuenta del usuario permite hacer login en los sistemas Windows de los laboratorios del DIIS integrados en el dominio DIISLAB.

Conviene destacar que se utilizan "Roaming Profiles", lo que resulta conventiente, aunque hay que tener ciertas precauciones para evitar que crezca demasiado:


Servicio de Oracle

Se dispone del gestor de bases de datos Oracle 18 (18.0.0)

Forma de acceso

Nota:

Para conectarse a Oracle 18 hay que usar la versión actual de sqlplus, que coexistía en nuestros sistemas con la antigua. La nueva está disponible en los Linux de los laboratorios, así como en los servidores "lab000" y "central". La antigua será completamente retirada en un futuro próximo y se evitará el tener que utilizar las órdenes terminadas en "2".

Para usar la nueva versión hay dos opciones:

  1. Poner en el $PATH primero /usr/local/oracle2 e invocar sqlplus
  2. No modificar el $PATH e invocar sqlplus2
    Esta seguna opción puede ser más cómoda si no se van a utilizar otros ejecutables del nuevo cliente de Oracle.

Cambio de contraseña:

ALTER USER nombre IDENTIFIED BY tu-nuevo-password

También es posible utilizar el interfaz web

Cuenta bloqueada:

Se puede desbloquear mediante el interfaz web

Notas adicionales


Servicios de MySQL

Está instalado el gestor de bases de datos MySQL 5.5.34

Forma de acceso

	. /usr/local/mysql5/config.sh

Ejemplo:

    mysql -h hendrix-mysql.cps.unizar.es -u $LOGNAME -p
    

Acceso vía web (experimental):

	http://hendrix-http.cps.unizar.es/si/mysql/
	

Cambio de contraseña:

SET PASSWORD FOR a123456@'localhost' = password('tu-nuevo-password');

También es posible utilizar el interfaz web (experimental)


El usuario también puede lanzar su propia instancia del gestor sin requerir privilegios especiales. La forma de hacerlo es:

Nota: Estas instrucciones son válidas para Solaris; en Linux son similares, puede cambiar únicamente algun "path".

        BASEDIR=$HOME/usr/web
        MYDIR=$BASEDIR/mysql

        1.- Asegurarse de que se tiene mysql/mysqld en el PATH

        hendrix01:~/ type mysql
        mysql is /opt/csw/bin/mysql
        hendrix01:~/ type mysqld_safe
        mysqld_safe is /opt/csw/bin/mysqld_safe


        2.- Crear $HOME/.my.cnf

        Ajustar, (al menos cambiar 6969 por, p.e. el UID):

        $ cat > ~/.my.cnf <<-EOF
        [client]
        #password       = my_password
        port            = 6969
        socket          = /tmp/mysql.sock.6969
        [mysqld]
        port            = 6969
        socket          = /tmp/mysql.sock.6969
        skip-locking
        #skip-networking
        #bind_address = 127.0.0.1
        # Start logging
        log
        EOF


        3.- Crear directorios

        mkdir $MYDIR
        cd $MYDIR
        mkdir -p var bin ; chmod 700 var


        4.- Ejecutar

        (cambiar "foobar" por el password deseado)

        PW=foobar

        mysql_install_db --datadir="${MYDIR}"/var
        nohup mysqld_safe --datadir="${MYDIR}"/var >/dev/null 2>&1 &
        mysqladmin -u root password "$PW"
        mysqladmin -u root -h `hostname` password "$PW"


        5.- Trabajar

        6.- Matar mysqld

        ps -ef | grep mysqld
        kill $PID


        (para las siguientes sesiones, basta con ejecutar

        nohup mysqld_safe --datadir="${MYDIR}"/var >dev/null 2>&1 &

        antes de comenzar)


        ALGUNAS NOTAS:

        - No es recomendable poner el password en ~/my.cnf (de
        hecho, puede fallar la asignación inicial de password
        de la base de datos)

        - Puede ser necesario poner también en ~/my.cnf
        pid-file        = /tmp/mysqld.6969.pid
        y/o usar
        /usr/local/mysql/bin/mysqld_safe \
        --datadir="${MYDIR}"/var \
        --log-error=/tmp/mysqld.6969.err \
        --pid-file=/tmp/mysqld.6969.pid
        Dependiendo de cada sistema, también puede ser necesario
        mysql_install_db  \
        --hefaults-file=$HOME/.my.cnf \
        --basedir=/usr/local/mysql \
        --datadir="${MYDIR}"/var


Servicios Web

Software

Configuración

Páginas personales

Nota: Se ha habilitado la orden "permisos_web" que ajusta los permisos del espacio web personal.

Servicios

Acceso (http)

El acceso a las páginas alojadas en este servidor no está limitado. No obstante, no se permite su uso con fines comerciales o para otros usos no contemplados en la normativa general.

Máquinas virtuales

El uso de máquinas virtuales para prácticas conlleva unas necesidades especiales en cuanto a espacio en disco, ancho de banda, etc. Como norma general, deberían utilizarse máquinas virtuales cuando no exista otra alternativa. Algunos ejemplos en los que puede ser válido:

Por el momento, se habían conseguido resultados aceptables (aunque la velocidad no era muy alta) accediendo a la imagen del disco duro "virtual" a través de sistema de ficheros montado por red. Por el contrario, la forma de trabajar consistente en copiar la imagen al disco local al comienzo de la sesion y devolverla al servidor al final ha resultado ser impracticable con la infraestructura de que disponemos.

Para mejorar esta situación se ha habilitado un servidor secundario denominado "central" (central.cps.unizar.es) en el laboratorio L1.02 ("Laboratorio de redes"), de forma que todo el tráfico correspondiente a imágenes de máquinas virtuales se realiza en la red interna de dicho laboratorio; siendo posible en caso de necesidad duplicar el ancho de banda disponible para este servidor.

Es posible acceder de forma interactiva a "central" utilizando los usuarios y contraseñas de "hendrix", siendo el directorio "HOME" compartido.

Conviene notar que los PC's del L1.02 resultan más adecuados que los del resto de laboratorios para todo lo que tenga que ver con virtualización. Para mejorar este aspecto, este laboratorio se ha actualizado a CentOS 6.3 y se ha instalado también en Linux VirtualBox (el resto de laboratorios serán actualizados el siguiente curso).


Recursos para prácticas

Aparte del directorio personal del usuario, existen otros directorios de interés para la realización de prácticas:

  1. Directorio con material de prácticas suministrado por los profesores. Accesible desde Windows como unidad Y: (\\hendrix-cifs\Practicas) o desde Unix/Linux como /misc/practicas.
  2. Directorio con imágenes de discos utilizados con máquinas virtuales. Accesible desde Windows como \\hendrix-cifs\Alumnos o desde Unix/Linux como /misc/alumnos.

Last Modified: May 26, 2016