flowchart TD ROOT["/"] --> ETC["etc"] ROOT --> HOME["home"] ROOT --> BIN["bin"] ROOT --> DEV["dev"] ROOT --> LIB["lib"] ROOT --> MNT["mnt"] ROOT --> TMP["tmp"] ROOT --> MORE["…"] HOME --> A1["a777777"] HOME --> A2["a888888"] HOME --> USERS["…"]
Práctica 1 - Sistemas operativos, Linux e interfaz textual
Objetivos
Los objetivos de esta práctica son los siguientes:
- Familiarizarse con la utilización de una máquina con sistema operativo Linux utilizando la interfaz textual (línea de comandos).
- Dar a conocer y aprender a manejar las máquinas del Departamento de Informática e Ingeniería de Sistemas desde la línea de comandos.
1 Cómo utilizar este guion
Esta práctica ha sido pensada para que sirva como material de referencia cuando tengáis que utilizar las máquinas Linux/Unix del departamento en algunas de las asignaturas de la titulación o en vuestra tarea académica. Nuestro objetivo a corto plazo es que entendáis la dinámica de trabajo con una máquina Linux desde la línea de comandos y conozcáis los recursos que pone el departamento a vuestra disposición.
Para obtener el mayor aprovechamiento de la misma os animamos a comenzar a trabajar en la práctica antes de la sesión presencial. Para ello, podéis trabajar realizando un acceso remoto a la máquina Linux del departamento denominada lab000, que tiene instalado el mismo sistema operativo que las máquinas de los laboratorios de prácticas del departamento.
A continuación, os indicamos los pasos a seguir para comenzar a trabajar en casa:
- Lee la sección El sistema operativo Linux.
- Lee la sección Credenciales de usuario y sigue las pautas que se indican para obtener tu nombre de usuario y contraseña para poder trabajar con las máquinas del departamento.
- Lee la sección Trabajar de manera remota en una máquina Linux.
- Si estás trabajando desde Windows, instala la aplicación MobaXterm. Lee la documentación para la utilización de MobaXterm que encontrarás al final del presente documento. Realiza la conexión remota a la máquina
lab000. - Si estás trabajando desde Linux o macOS, sigue las instrucciones situadas al final del presente documento para realizar una conexión remota desde un terminal de tu ordenador (interfaz textual) a la máquina
lab000.
- Si estás trabajando desde Windows, instala la aplicación MobaXterm. Lee la documentación para la utilización de MobaXterm que encontrarás al final del presente documento. Realiza la conexión remota a la máquina
- Comienza a realizar los ejercicios que se proponen a partir de la sección Familiarizándonos con la consola. Ten en cuenta que, si lanzas una aplicación gráfica como
firefox, esta se ejecuta en remoto y la velocidad en la interacción dependerá de la conexión de red y del número de usuarios conectados a dicha máquina remota, pudiendo convertirlo en algo prácticamente imposible.
La parte del presente guion que explica la interfaz gráfica de Linux se podrá trabajar en la sesión de prácticas, pero nunca de forma remota, si se desarrolla presencialmente en los laboratorios del departamento que están preparados para ello. Si la sesión se desarrolla en otras ubicaciones, dicha parte se obviará debido a las cuestiones técnicas descritas anteriormente.
2 El sistema operativo Linux
Linux es un sistema operativo libre de tipo Unix. Se caracteriza por ser un sistema multiplataforma, multiusuario y multitarea. Este sistema operativo se encuentra accesible en diferentes distribuciones Linux que consisten en el núcleo del sistema operativo junto con una selección de aplicaciones y programas útiles para el usuario final. Las principales familias de distribuciones Linux son las siguientes:
- Ubuntu. Es la distribución más conocida y utilizada. Está orientada a usos generales y se caracteriza por su compatibilidad de software y facilidad de uso equiparable a macOS o Windows. Desarrollada y mantenida por la empresa Canonical.
- Fedora. Es una distribución orientada a estaciones de trabajo y servidores. Se caracteriza por su estabilidad y seguridad. Desarrollada y mantenida por Red Hat.
- openSUSE. Es una distribución orientada a la administración de sistemas y servicios. Se caracteriza por ser una distribución potente y administrable para usos avanzados. Desarrollada y mantenida por SUSE.
- Debian. Es una distribución mantenida por una red de desarrolladores voluntarios con un gran compromiso por los principios de software libre.
En los laboratorios de prácticas del departamento se encuentra instalada la distribución CentOS. Esta distribución parte de Fedora y se mantiene por una comunidad de desarrolladores voluntarios. Es una distribución adecuada como estación de trabajo y facilita el mantenimiento de un conjunto de estaciones como las de los laboratorios de computadores.
Existen diferentes formas de trabajar con un sistema operativo Linux. La primera de ellas es realizando una instalación de una distribución en una máquina. Para ello necesitas que tu disco duro disponga al menos de dos particiones. En la primera se instalará el sistema. Esta partición debe ser lo suficientemente grande para albergar el sistema operativo y las aplicaciones. La segunda será utilizada por el sistema operativo como una especie de memoria RAM extra denominada swap. Como norma general, esta partición se creará con el mismo tamaño que la memoria RAM del equipo. En una misma máquina pueden coexistir diferentes sistemas operativos. No obstante, la configuración del arranque puede resultar complicada para personas sin experiencia previa.
Existen distribuciones Linux que no requieren instalación (live CD o USB). En estos casos la distribución se encuentra instalada en un dispositivo extraíble que puede ejecutarse sin necesidad de instalación. Esta forma de trabajar resulta más lenta que disponer de una distribución instalada, aunque puede resultar útil si lo único que se quiere es familiarizarse con la interfaz de usuario proporcionada por la distribución, realizar operaciones sencillas o realizar operaciones de recuperación de sistemas.
Por último, se puede trabajar en una máquina con un sistema operativo Linux de manera remota utilizando un terminal. En este caso nuestra máquina tan solo necesitará una aplicación para poder acceder a la máquina. Si trabajamos desde un sistema operativo Linux o macOS, nuestra máquina ya dispone de dicha aplicación: el mismo terminal o consola de la interfaz textual. Si trabajamos desde un sistema operativo Windows, las aplicaciones más utilizadas son:
La principal diferencia entre PuTTY y MobaXterm es que el segundo permite mostrar aplicaciones con interfaz gráfica directamente, mientras que con PuTTY se necesita un programa adicional para esta tarea, como Xming o similar. Además, MobaXterm permite el intercambio de ficheros utilizando una interfaz gráfica. Para trabajar en el contexto de esta asignatura os recomendamos la utilización de MobaXterm para quienes trabajéis de forma habitual con Windows.
Si se desarrolla presencialmente en los laboratorios del departamento, en esta práctica aprenderemos a trabajar de dos maneras: con una distribución Linux instalada en una máquina y mediante un terminal (modo línea de comandos). En caso de desarrollarse en otras aulas, de manera similar a como trabajáis desde casa, solo se trabajará con la interfaz textual. Si tienes curiosidad por trabajar con otras distribuciones, te animamos a probar alguna distribución live CD o USB de Ubuntu u openSUSE.
3 Credenciales de usuario
Tanto para acceder a las máquinas de los laboratorios como a la máquina remota utilizaremos la cuenta personal que el departamento pone a nuestra disposición al inicio del curso. Para ello, accederemos a la sección de estudiantes del sitio web del departamento y, a través del menú «Servidor de prácticas», podremos acceder a:
- Información general de uso de dicho servidor, cuya lectura es obligatoria.
- Cambio de contraseña, que nos permitirá tanto solicitar una primera contraseña como cambiar la que tengamos en un momento concreto.
- Cambio de shell, interesante si el shell por defecto no es Bash.
Para la solicitud de una contraseña nueva, lee atentamente las instrucciones que aparecen en la página. Se enviará un correo electrónico a vuestra cuenta de Unizar con la contraseña personal elegida. Tened en cuenta que tiene que ser una contraseña segura que contenga alguna mayúscula, números y algún carácter especial. De lo contrario, el sistema ignorará vuestra petición. Vuestro nombre de usuario será la letra a seguida de vuestro NIA, por ejemplo a999999.

4 Interfaz gráfica de Linux
Esta sección solo se podrá trabajar si la sesión de prácticas se realiza presencialmente en los laboratorios del departamento. En ningún caso se debe intentar lanzar la ejecución de la interfaz gráfica de Linux de forma remota.
Una vez que hemos accedido a la máquina del laboratorio con nuestras credenciales de usuario del departamento, nos encontramos con el entorno de escritorio GNOME de la distribución CentOS instalada en la máquina. La apariencia y manejo de la interfaz gráfica recuerda a la del sistema operativo Windows hasta la versión 7, con algunas pequeñas diferencias.

El menú de inicio se encuentra ubicado en la parte superior de la pantalla y dividido en dos zonas:
Applications. Agrupa accesos a algunas de las aplicaciones más importantes instaladas en el sistema. Localiza un navegador, como Firefox o Chrome, y las aplicaciones de ofimática instaladas. Familiarízate con su ejecución y manejo.Places. Agrupa los directorios más relevantes del sistema.
En la parte inferior llaman la atención unos números. En la figura aparecen como 1 / 4. Si pulsas sobre ellos puedes acceder a los diferentes escritorios que tenemos configurados en nuestra cuenta. Esta es una característica muy útil que incorporan las diferentes distribuciones Linux desde sus inicios, pues permite cambiar entre tareas sin modificar la configuración del área de trabajo. En la figura se indica que se está mostrando el escritorio número 1 de un total de 4.
Por último, en el escritorio aparecen los iconos de los directorios más relevantes del sistema:
Home. Da acceso al directorio personal del usuario.Trash. Da acceso a la papelera.
La manera de trabajar con la interfaz gráfica de Linux es muy similar a la de Windows o macOS, por lo que de manera intuitiva y en muy poco tiempo un usuario de Windows o macOS puede llegar a tener la misma soltura en el manejo de ambos sistemas operativos. En la mayoría de las situaciones, el menú contextual, que se abre con el botón derecho del ratón, proporciona la ayuda necesaria para realizar tareas sencillas con ficheros, directorios y aplicaciones.
5 Interfaz textual de Linux
La interfaz textual de un sistema operativo es una manera alternativa de trabajo que consiste en una interacción usuario-máquina basada en órdenes o comandos que el usuario escribe y que el sistema operativo interpreta y ejecuta. Los primeros sistemas operativos de los años cincuenta únicamente contaban con interfaz textual. La comercialización de los primeros sistemas operativos con interfaz gráfica llegaría en los setenta con Xerox y no comenzaría a establecerse hasta los años ochenta con Apple Lisa y Windows 1.0.
Aunque parezca una manera arcaica de trabajar con el computador, no está obsoleta en absoluto. Actualmente podría considerarse una manera avanzada de trabajo, pues permite realizar más tareas que la interfaz gráfica, automatizar la ejecución de conjuntos de tareas utilizando diferentes lenguajes de programación y es la manera de trabajo habitual mediante terminal, dada su rapidez y eficiencia.
La aplicación para trabajar con la interfaz de comandos de un sistema operativo es la consola o terminal. En su forma más simple, la consola consiste en una ventana con un espacio donde se pueden escribir las órdenes. El lugar donde se escriben las órdenes se denomina prompt o shell. Al teclear una orden terminada con la tecla Intro, el sistema operativo la interpreta. Si esta se encuentra entre las órdenes del sistema operativo, se realiza la acción correspondiente; en caso contrario, se informa al usuario de que se ha cometido un error.
La interfaz textual de Linux es prácticamente idéntica a la de macOS, puesto que ambos sistemas operativos utilizan versiones similares del núcleo. La interfaz textual de Windows difiere de la de Linux, aunque la manera de trabajar es similar. La interfaz textual de Linux es, en general, más potente que la de Windows.
5.1 Familiarizándonos con la consola
Para realizar este apartado desde máquinas que no sean de los laboratorios del departamento se recomienda no ejecutar en remoto una aplicación pesada como Firefox. Será mejor ejecutar otra más ligera, como el editor de texto plano Gedit.
En CentOS se puede acceder a la consola mediante el menú de inicio:
Applications > System Tools > Terminal

Con la consola se pueden ejecutar aplicaciones instaladas en la máquina. Por ejemplo, teclea en el terminal:
firefoxComprueba que aparece el navegador y que puedes trabajar con él del mismo modo que lo harías arrancando la aplicación desde el menú de aplicaciones. La única cosa a tener en cuenta es que, si cierras la consola, cerrarás todas las aplicaciones que se lanzaron desde la interfaz textual. Haz la prueba cerrando la consola.
Ten en cuenta que la consola distingue mayúsculas de minúsculas; es decir, si tecleas FireFox, el sistema operativo no comprenderá que quieres ejecutar la aplicación firefox y te dará un mensaje de error.
A continuación, vamos a comprobar que la interfaz textual de Linux permite el trabajo multitarea. Abre de nuevo la consola y teclea firefox. Si intentas enviar nuevas instancias de firefox al sistema, verás que estas son ignoradas hasta que no cierres la aplicación anterior. Se dice que la aplicación se está ejecutando en modo foreground. ¿Cómo se puede conseguir el trabajo multitarea entonces? Teclea:
firefox &Verás que la aplicación permanece activa y además puedes enviar nuevas instancias de firefox & al sistema y estas son ejecutadas. Así, el uso del símbolo & al finalizar una orden la envía en ejecución al background.
Además, si tienes una tarea ejecutándose en foreground que bloquea la consola, puedes enviarla al background mediante la siguiente secuencia de instrucciones:
Ctrl+Z → detiene el proceso
bg → lo manda al background
Puedes terminar de modo seguro una tarea que se está ejecutando en foreground mediante Ctrl+C.
La tecla de tabulación Tab puede utilizarse para completar órdenes, nombres de aplicaciones o nombres de ficheros y directorios. Por ejemplo, si tecleas firef y pulsas Tab, el sistema entenderá que quieres ejecutar la aplicación firefox y te ayudará a completar tu orden.
Se pueden recuperar comandos ejecutados anteriormente utilizando las teclas de dirección arriba y abajo. La orden history almacena un recordatorio de las últimas órdenes ejecutadas por el usuario.
Se pueden abrir nuevas instancias del terminal utilizando la orden xterm &. Ten en cuenta que, si cierras la ventana desde donde se crearon las instancias, estas se cerrarán.
Se puede borrar la información del terminal utilizando la orden clear y se puede salir del mismo utilizando la orden exit. Recuerda que, si cierras la consola, pueden cerrarse todas las aplicaciones que dependan de ella. Comprueba si es así en los laboratorios del departamento.
5.2 Explorando directorios
Las órdenes que vamos a trabajar en esta sección son:
| Orden | Descripción |
|---|---|
ls |
Lista el contenido de un directorio. |
pwd |
Informa del directorio de trabajo, es decir, dice dónde estamos. |
cd |
Permite cambiar de directorio de trabajo. |
Como todos los sistemas operativos actuales, Linux organiza la información en forma de árbol de directorios y ficheros. A diferencia de Windows, que organiza los directorios utilizando un árbol por unidad, Linux utiliza un único árbol que cuelga del directorio raíz /.
Si en la consola tecleamos la orden:
ls /veremos un listado del contenido del directorio raíz similar al siguiente:
bin dev export lib lost+found misc opt root sbin sys usr
boot etc home lib64 media mnt proc run srv tmp var
Para los usuarios recién iniciados el directorio más importante es su directorio home, que contiene los ficheros propios del usuario. Su ubicación depende del lugar elegido por el administrador de la máquina. Normalmente se encuentra en /home. Así, el usuario a777777 podría tener su home en /home/a777777. Comprueba si esto es así en esta máquina utilizando la orden ls. Escribe la orden utilizada. Como pista, ten en cuenta que ls admite rutas relativas y absolutas.
Ahora, sabiendo que cuando se abre la consola esta nos sitúa en nuestro home como directorio de trabajo y que pwd nos muestra el directorio actual, si no se cumpliera lo mencionado en el apartado anterior, ¿sabrías encontrar dónde ha «escondido» el administrador de la máquina los home de los alumnos? Comprueba que tu deducción es correcta utilizando ls.
En CentOS la aplicación análoga al explorador de Windows se llama Nautilus. Ejecuta nautilus en background. Teclea ahora ls en la consola. ¿Coincide la información mostrada por la aplicación gráfica y la orden textual? ¿Qué directorio se está mostrando en Nautilus?
En el explorador Nautilus, escribe el carácter barra inclinada (/). Debería aparecer un campo de texto. Escribe dos puntos seguidos (..). Verás que el explorador accede a otro directorio. Vuelve a la consola y teclea:
cd ..
ls -lCompara la información mostrada por la aplicación gráfica y la orden textual. ¿Qué acción realiza cd ..? ¿Qué directorio denota ..? ¿Qué significa directorio padre?
Repite el proceso anterior. ¿En qué directorio te encuentras ahora?
Regresa a tu home utilizando Nautilus, sin utilizar los botones, y en la consola el comando cd. Ten en cuenta que la aplicación gráfica y la textual no están sincronizadas; es decir, pueden mostrar directorios diferentes. Este ejercicio solo debe hacerse desde la interfaz gráfica de CentOS, no desde línea de comandos.
En la línea de comandos compara las siguientes órdenes sobre tu home y sobre el directorio raíz /:
cd ..
ls
cd .
ls
cd ~
ls¿Qué directorios denotan .., . y ~?
Regresa a tu home utilizando cd.
La mayoría de las órdenes en Linux admiten que se pueda modificar su comportamiento. Para conocer los modificadores de una orden, teclea orden --help; por ejemplo, ls --help. Dos modificadores interesantes de ls son l y a. Teclea:
ls -lay compara la información que ofrece Nautilus respecto a esta orden, si estás en la interfaz gráfica de CentOS.
La orden ls -la muestra cada fichero o directorio del directorio de trabajo en una línea. ¿Cómo puede saberse si una línea corresponde a un fichero o a un directorio? Comparando ls -l y ls -la, ¿cómo puede saberse si una línea corresponde a un fichero o directorio oculto?
Sabiendo que las ternas rwx que aparecen al principio de cada línea son los permisos de lectura (r), escritura (w) y ejecución (x) del fichero o directorio correspondiente, ¿sabrías interpretar qué puede hacer el usuario, el grupo y todos los usuarios del equipo sobre el fichero .gnome?
La orden ls -aF muestra los directorios terminados en /, los ejecutables terminados en * y los accesos directos terminados en @. Si realizamos algo parecido con ls -laF, aparecerán los mismos símbolos salvo para los accesos directos, en los que aparece una flecha (->). Ejecuta ls /bin -laF, es decir, la orden aplicada sobre el directorio bin que cuelga del directorio raíz. Ejecuta también ls /bin -aF y escribe los resultados de ambas ejecuciones.
Comparando los resultados, ¿de qué dos formas puede saberse si una línea corresponde a un fichero o a un directorio? ¿De qué dos formas puede saberse si una línea corresponde a un acceso directo? ¿Cómo puede saberse a dónde apunta el acceso directo?
A diferencia de Windows, ¿qué extensión tiene un fichero ejecutable en Linux? ¿Qué caracteriza a un fichero ejecutable en Linux?
La interfaz textual dispone de caracteres comodín para representar un solo carácter (?) y un conjunto indeterminado de caracteres (*). ¿Qué acción realiza cada una de las siguientes órdenes?
ls /dev/*2
ls /dev/*2*
ls /dev/tty?
ls /dev/tty*¿Cómo mostrarías los ficheros y directorios ocultos del directorio de trabajo utilizando los caracteres comodín?
5.3 Editando ficheros y directorios
Las órdenes que vamos a trabajar en esta sección son:
| Orden | Descripción |
|---|---|
mkdir |
Crea un directorio. |
cp |
Copia un directorio o fichero. |
mv |
Mueve un directorio o fichero. |
head |
Permite visualizar el comienzo de un fichero. |
tail |
Permite visualizar el final de un fichero. |
more |
Permite visualizar el contenido de un fichero. |
diff |
Permite visualizar las diferencias entre dos ficheros. |
gedit |
Aplicación del entorno GNOME que permite editar un fichero de texto. |
rm |
Borra un directorio o fichero; debe usarse con mucho cuidado. |
tar |
Permite comprimir un fichero o directorio. |
zip |
Permite comprimir un fichero o directorio en formato ZIP. |
Infórmate sobre los comandos anteriores acudiendo a la ayuda y a la documentación. Escribe los comandos que realicen las tareas propuestas:
Sitúate en tu home, crea el directorio
Practica1y selecciona este último como directorio actual de trabajo.Copia los ficheros de la carpeta
/usr/include/con extensión.hque empiezan pornen el directorio de trabajo. Comprueba que has copiado los siguientes ficheros; es posible que exista alguna discrepancia:nc_tparm.h ncurses.h netdb.h nl_types.h ncurses_dll.h ndbm.h nlist.h nss.hCrea el directorio
Headersen el directorio de trabajo y mueve los ficheros que comienzan pornca dicho directorio. Sin cambiar de directorio, comprueba que se han movido conls.Sin cambiar de directorio de trabajo, ejecuta
head,tailymoresobre el fichero que acabas de mover,ncurses.h. ¿Qué diferencias encuentras en el comportamiento de las tres órdenes? ¿Se puede modificar el número de líneas que se muestran?Cambia de directorio actual al directorio
Headers.Duplica el fichero
ncurses.hcopiándolo en el ficheroncurses_copia.h.Edita
ncurses_copia.hutilizandogedit &y añade el texto que quieras. Compara ambos ficheros utilizandodiff. Observa los resultados y describe brevemente lo mostrado.Borra el fichero
ncurses_copia.h.Vuelve al directorio
Practica1y ejecuta las órdenes para comprimir el directorioHeaders:tar -zcvf Headers.tar Headers/ zip -r Headers.zip Headers/¿Cuál de las dos órdenes alcanza un mayor grado de compresión?
Para descomprimir, ejecuta las órdenes y comenta brevemente qué observas:
tar -zxvf Headers.tar unzip Headers.zipBorra el directorio
Headers.
5.4 Búsquedas
Las órdenes que vamos a trabajar en esta sección son:
| Orden | Descripción |
|---|---|
find |
Permite buscar un fichero o conjunto de ficheros con características comunes en su nombre. |
grep |
Permite realizar búsquedas por palabras clave en un fichero o conjunto de ficheros de texto. |
- Busca los ficheros de la carpeta
/usr/include/con extensión.hque empiezan porn. - Busca los ficheros de la carpeta
/usr/include/que contengan la palabrainclude.
5.5 Sistema
Las órdenes que vamos a trabajar en esta sección son:
| Orden | Descripción |
|---|---|
top |
Permite visualizar los procesos que están ejecutándose en la máquina. |
ps |
Permite visualizar los procesos que están ejecutándose en la máquina. |
du |
Permite visualizar el tamaño de un fichero o directorio. |
df |
Permite visualizar el espacio libre en los discos duros de la máquina. |
kill |
Permite enviar señales a los procesos que están ejecutándose en la máquina. |
- Ejecuta
tope interpreta la información que aparece. ¿Quién es el usuarioroot? ¿Qué sucede al pulsar la tecla1? ¿Cómo visualizarías solo tus procesos? Compara la información proporcionada portopcon la ordenps. - Ejecuta
du -hsobre los ficherosHeaders.taryHeaders.zip. Sin cambiar de directorio de trabajo, ejecutadu -hsobre el directorioPractica1. - Ejecuta
df -h. Interpreta la información que aparece. - Edita el fichero
ncurses.hcongedit &. Utilizandotopops, localiza el identificador de proceso, PID. Ejecutakill -9 PID. ¿Qué efecto tiene sobre el proceso? ¿Puedes «matar» procesos que no hayas creado tú?
5.6 Trabajar de manera remota en una máquina Linux
Las órdenes que vamos a trabajar en esta sección son:
| Orden | Descripción |
|---|---|
ssh |
Permite una conexión cifrada a otra máquina Linux. |
ping |
Permite saber si existe conexión entre dos máquinas Linux. |
who |
Permite saber los usuarios conectados a una máquina Linux. |
whoami |
Permite saber mi nombre de usuario. |
scp |
Permite realizar una copia cifrada de ficheros entre dos máquinas Linux. |
El Departamento de Informática e Ingeniería de Sistemas tiene a disposición de los alumnos dos servidores de docencia. El más utilizado es Hendrix, con nombre de dominio hendrix.cps.unizar.es. Se trata de una máquina Unix; no obstante, la forma de trabajar con ella de manera remota es idéntica a cualquier máquina Linux. En la página web de Hendrix tenéis disponible información detallada sobre este servidor.
A lo largo de la titulación utilizaréis este servidor para la realización de prácticas. Por ahora, el uso que podéis hacer de él es almacenar copias de seguridad de los archivos de esta u otras asignaturas de la titulación. No obstante, tened en cuenta que el administrador del equipo ha dispuesto que cada usuario tenga una capacidad máxima de uso del disco duro; consulta «Sobre las cuotas de disco».
La máquina que vamos a utilizar en esta práctica es lab000, con nombre de dominio lab000.cps.unizar.es. Se trata de una máquina Linux con la misma configuración que las máquinas de los laboratorios del departamento.
flowchart LR LOCAL["Ordenador local"] -->|"SSH: comunicación segura"| REMOTO["Ordenador remoto"]
En primer lugar, vamos a averiguar si existe conexión entre tu máquina y lab000. Para ello, en la consola puedes teclear:
ping lab000.cps.unizar.eso:
ping 155.210.152.177donde 155.210.152.177 es la dirección IP de la máquina. Esta orden es la misma para la interfaz textual de Linux, macOS y Windows, por lo que puedes realizar este ejercicio desde cualquier otra máquina.
Para acceder a lab000 desde una máquina Linux o macOS puedes utilizar:
ssh -X lab000.cps.unizar.eso:
ssh -X 155.210.152.177La orden también sirve desde Windows con MobaXterm. No obstante, MobaXterm permite guardar la conexión entre sesiones, lo cual puede ser muy cómodo si utilizas con frecuencia la máquina Linux a la que quieres acceder. Para ello, deberás completar la solicitud de conexión en la aplicación utilizando tu nombre de usuario y la dirección IP o nombre de dominio de la máquina.
Una vez dentro, puedes repetir los ejercicios relacionados con la línea de comandos en esta máquina. Ten en cuenta que, si lanzas alguna aplicación gráfica, puede ralentizar el trabajo e incluso producir un bloqueo, según la conexión a red.
A modo de curiosidad, puedes conocer qué usuarios se encuentran conectados a la máquina utilizando who. También puedes conocer el nombre de usuario con el que estás trabajando utilizando whoami.
Para la realización de copias de seguridad puedes utilizar scp. Por ejemplo, si en tu home de lab000 tienes un directorio denominado BackUp y quieres realizar una copia de seguridad del directorio Practica1 que se encuentra en tu directorio de trabajo, podrías escribir:
scp -rp Practica1 lab000.cps.unizar.es:~/BackUpRecuerda que ~ denota tu home. También, desde una máquina Windows, puedes realizar las copias de seguridad utilizando la interfaz gráfica que proporciona MobaXterm.
6 Acceso remoto utilizando MobaXterm
Todos los alumnos de la asignatura disponen de una cuenta personal en el departamento con la que se trabajará en varias de las prácticas. Esta cuenta permite el acceso remoto, por ejemplo desde casa, a través del equipo lab000.cps.unizar.es.
Si el acceso remoto se realiza a través de un equipo con sistema operativo Windows, se recomienda la utilización de MobaXterm.
MobaXterm permite el acceso tanto a la interfaz textual del equipo, para trabajar de forma remota con él, como al sistema de ficheros que contiene, para poder subir y bajar ficheros entre nuestro equipo Windows y nuestra cuenta departamental. Hay una versión instalable y una versión portátil que no necesita instalación; solo hay que ejecutar el fichero MobaXterm_Personal_X.X. Para un equipo con el que te vayas a conectar de forma habitual es recomendable la versión instalable si no tienes problema de espacio de almacenamiento.
Una vez lanzada la aplicación:
- Para acceder a la interfaz textual: hay que crear una sesión SSH indicando como
hostremotolab000.cps.unizar.es. Se puede especificar directamente un nombre de usuario para no tener que introducirlo como inicio de sesión de la conexión. Ten cuidado al escribir la contraseña, pues aunque efectivamente la estemos escribiendo no se produce «eco»; es decir, no aparece nada en pantalla que indique que estamos escribiendo. - Para acceder al sistema de ficheros: hay que crear una sesión SFTP. Una vez conectados, el equipo local con Windows aparece a la izquierda y el equipo remoto con Linux aparece a la derecha. Los ficheros se pueden arrastrar y soltar en ambos sentidos.


Las sesiones creadas se guardan automáticamente. La próxima vez que abras MobaXterm podrás iniciarlas directamente desde la lista de la izquierda.

Cuando la conexión SSH está activa, la terminal remota ocupa la zona principal. El navegador SFTP integrado aparece a la izquierda y permite consultar los ficheros de tu cuenta sin abrir una segunda conexión.

En una sesión SFTP, MobaXterm muestra los ficheros locales y remotos en paralelo. Puedes transferirlos arrastrándolos de un lado al otro.

Por último, si el acceso remoto se realiza a través de un equipo con sistema operativo macOS o Linux, para efectuar una conexión SSH no es necesaria ninguna aplicación. Se puede efectuar desde la terminal ejecutando:
ssh -X axxxxxx@lab000.cps.unizar.essiendo axxxxxx el nombre de usuario de tu cuenta departamental.
Para conexiones SFTP en macOS se recomienda la aplicación de software libre FileZilla Client, eligiendo la versión correspondiente a nuestro sistema operativo. Permite acceder al sistema de ficheros de nuestra cuenta Linux. Al igual que MobaXterm, muestra el equipo local con macOS a la izquierda y el equipo remoto con Linux a la derecha, y permite arrastrar y soltar ficheros en ambos sentidos.