10.4. Acceder a la carpeta compartida con NFS desde un cliente con Ubuntu
En principio, las operaciones realizadas en el punto anterior han conseguido ofrecer dos carpetas distintas del servidor para que puedan ser accedidas desde cualquiera de los equipos cliente de la red. Sin embargo, ahora tendremos que configurar los clientes para que ese acceso sea efectivo.
Comenzaremos por el cliente con Ubuntu y, para completar su configuración, tendremos que realizar las siguientes operaciones:
- Crear el punto de montaje, en la estructura de directorios local, donde se montarán las carpetas compartidas.
- Realizar el montaje y comprobarlo.
- Crear archivos en las carpetas compartidas
- Conseguir que las carpetas compartidas se monten automáticamente al arrancar el cliente.
Una vez que tenemos claras las acciones que llevaremos a cabo, es hora de comenzar:
Crear el punto de montaje para las carpetas compartidas
Lo primero que tendremos que decidir es en qué lugar del árbol de directorios del equipo cliente se montarán las carpetas compartidas por el servidor (recuerda que en Linux sólo existe un árbol de directorios donde se van montando los diferentes volúmenes que necesitemos)
Para este ejemplo, crearemos una subcarpeta, dentro de /mnt llamada nfs. En su interior, reproduciremos la ruta original de las carpetas compartidas:
sudo mkdir -p /mnt/nfs/home sudo mkdir -p /mnt/nfs/var/compartido
Quizás lo único destacable en la sintaxis anterior sea el uso del argumento -p (también podemos escribir –parents). Su cometido es doble: por un lado evitar que se produzca un error si alguna de las carpetas ya existiese (aunque este no es el caso); por el otro, crea automáticamente la estructura del árbol que sea necesaria de forma automática. Es decir, en la primera orden, se crea la carpeta home, pero también la carpeta nfs (que aún no existía). En la segunda, se crea la carpeta compartido y, para conseguirlo, también crea la carpeta var.
Una última precaución que deberemos tener en cuenta es que, aunque hayamos dado permisos de escritura sobre las carpetas compartidas en la configuración NFS del servidor, no podremos escribir en ellas si no disponemos de permisos sobre los puntos de montaje donde se van a montar dichas carpetas en los clientes. Por lo tanto, antes de continuar, cambiaremos también sus permisos:
sudo chmod -R 777 /mnt/nfs
Realizar el montaje de las carpetas compartidas y comprobarlo
La siguiente tarea que debemos completar, será montar las carpetas compartidas por el servidor en el punto montaje que hemos creado en el apartado anterior. Para ello, como es natural, recurrimos al comando mount:
sudo mount 192.168.1.10:/home /mnt/nfs/home sudo mount 192.168.1.10:/var/compartido /mnt/nfs/var/compartido
Para comprobar que todo ha ido bien, utilizaremos dos comandos: df y mount (aunque con cualquiera de ellos sería suficiente)
El comando df nos ofrece información sobre el espacio en disco utilizado y el que tenemos disponible en los sistemas de archivos que tengamos montados en estos momentos (de todos, salvo que indiquemos lo contrario en sus parámetros). Así pues, escribiremos lo siguiente en la terminal:
df -h
La opción -h hace que la salida sea más fácilmente comprensible para las personas (-h ó –human-readable).
2
Al final de la salida del comando, podemos comprobar que aparecen las carpetas que acabamos de montar.
Como hemos dicho antes, también podemos utilizar el comando mount, sin argumentos, para mostrar la lista de los volúmenes montados en este momento (en realidad, lo que muestra es el contenido del archivo /etc/mtab.
mount
La ventaja de este último método es que disponemos de información complementaria, como los permisos o las direcciones IP tanto del cliente como del servidor).
Una última comprobación sería obtener el contenido de las carpetas compartidas:
Crear archivos en las carpetas compartidas
Para comprobar que todo funciona correctamente, crearemos un par de archivos vacíos (uno en cada carpeta) y después comprobaremos que se han creado.
touch /mnt/nfs/home/ejemplo1 touch /mnt/nfs/var/compartido/ejemplo2
Si experimentas algún tipo de error durante la creación, puede estar ocasionado por los permisos de alguna de las carpetas montadas. Si es así, basta con volver a ejecutar la orden chmod que explicamos más arriba.
Y para comprobar que la creación se ha realizado con éxito, consultamos el contenido de ambas carpetas:
ls /mnt/nfs/home ls /mnt/nfs/var/compartido
Montar automáticamente las carpetas compartidas al iniciar el cliente.
Los sistemas operativos de la familia Unix, como es el caso de Linux, disponen de un archivo /etc/fstab (file systems table) donde se guarda la información necesaria sobre los diferentes volúmenes que se montarán durante el arranque del sistema.
Cuando implementamos una estructura NFS, como la que estamos viendo aquí, lo más probable es que queramos que los clientes monten las carpetas compartidas durante el arranque del sistema. Como habrás podido deducir, esto se consigue modificando el archivo /etc/fstab. Y, como de costumbre, recurrimos al editor nano para conseguirlo:
sudo nano /etc/fstab
Cada línea del archivo representa un volumen diferente y atiende al siguiente formato:
El estudio detallado de las opciones de montaje se escapan de los objetivos de este texto. Sin embargo, si estás interesado en profundizar, puedes recurrir, por ejemplo, al manual de Ubuntu (http://manpages.ubuntu.com/manpages/hardy/es/man5/nfs.5.html).
- Dispositivo: Referencia al volumen que vamos a montar. En nuestro caso, para la primera carpeta, su valor será 192.168.1.10:/home.
- Punto de montaje: La carpeta donde se montarán los datos del volumen. Su valor para la primera carpeta será /mnt/nfs/home.
- Sistema de archivos: Indica el sistema de archivos utilizado en el volumen. En ambos casos, el valor será nfs.
- Opciones: Indica los parámetros que usará mount para montar el dispositivo. Estarán separadas por comas y no incluirán espacios. Para las dos carpetas, las opciones serán auto,noatime,nolock,bg,nfsvers=3,intr,tcp,actimeo=1800.
- Frecuencia de respaldo: Frecuencia con la que se utiliza la herramienta dump para respaldar (copiar) el sistema de archivos. Si su valor es cero, el volumen no se respalda.
- Orden de revisión: Orden en el que la herramienta fsck revisa el volumen en busca de posibles errores durante el proceso de inicio. Si su valor es cero, el volumen no se revisa.
En definitiva, las líneas que debemos incluir son estas:
192.168.1.10:/home /mnt/nfs/home nfs auto,noatime,nolock,bg,nfsvers=3,intr,tcp,actimeo=1800 0 0 192.168.1.10:/var/compartido /mnt/nfs/var/compartido nfs auto,noatime,nolock,bg,nfsvers=3,intr,tcp,actimeo=1800 0 0
Después de esto, sólo quedará grabar los cambios y reiniciar para comprobar que todo funciona correctamente.