10.3. Configurar el servidor NFS

Vamos a suponer que necesitamos compartir con los clientes dos carpetas del servidor: /home y /var/compartido. Los pasos que deberemos seguir son estos:

  • Crear la carpeta o las carpetas que aún no existan.
  • Exportar el contenido de las carpetas
  • Reiniciar el servicio NFS
  • Crear un archivo en una de las carpetas compartidas para comprobar que es accesible desde los clientes

Crear las carpetas a compartir

El proceso es tan sencillo como utilizar el comando mkdir. No obstante, como queremos que ningún usuario experimente problemas para acceder a los datos, también cambiaremos el nombre del usuario y grupo propietarios de la carpeta. La idea es que no sean propiedad de nadie.

Los comandos a ejecutar serían estos:

sudo mkdir /var/compartido
sudo chown nobody:nogroup /var/compartido

1

Creamos la carpeta y cambiamos su propietario

Sin embargo, a la carpeta /home sólo accederemos como superusuario, por lo que no cambiaremos su propiedad.

Exportar el contenido de las carpetas

Después de esto, debemos editar el archivo /etc/exports que es donde se indica a NFS qué carpetas vamos a compartir (exportar, en la terminología NFS). Cada carpeta exportada debe estar en una línea diferente de este archivo, aunque una línea muy larga puede continuarse en la línea siguiente poniendo al final una barra invertida ”.

Las líneas tienen el siguiente formato:

ruta cliente_1(opciones) cliente_2(opciones) …

Observa que cada cliente tiene dos partes:

No hay espacios en la definición de un cliente, sólo entre un cliente y otro, y entre el primero y la ruta de la carpeta.

  • La primera identifica al ordenador cliente (en el ejemplo lo hemos representado como cliente:1, cliente_2, …). Podemos usar cualquiera de las siguientes opciones:
    • Una dirección IP o un nombre DNS.
    • Caracteres comodín para representar todo el nombre del cliente o una parte. Podemos utilizar los comodines ‘?'(para representar un carácter cualquiera y ‘*’ (para representar cualquier conjunto de caracteres.No se recomienda utilizarlos con direcciones IP.
    • Intervalos de direcciones IP. Por ejemplo, 192.168.1.0/30, que permitirá acceder a las primeras 30 direcciones a partir de 192.168.1.0
    • netgropus. Cuando dispongamos de un servidor NIS en la red, podremos agrupar los usuarios en grupos . En este caso, podremos utilizar el grupo con el formato @nombre_de_grupo.
  • La segunda será una lista de opciones para compartir. Entre las opciones que podemos utilizar, se encuentran las siguientes:
    • ro(read-only): La carpeta compartida será de sólo lectura. Es la opción predeterminada.
    • rw (read-write): El usuario podrá realizar cambios en el contenido de la carpeta compartida.
    • wdelay: El servidor NFS no escribe en el disco si espera otra solicitud de forma inminente. Así se reducen los accesos a disco y mejora el rendimiento. Es la opción predeterminada, pero sólo funciona cuando usamos la opción sync.
    • no_wdelay: Deshabilita la característica anterior.
    • root_squash: Evita que los usuarios con privilegios administrativos los mantengan, sobre la carpeta compartida, cuando se conectan remotamente. En su lugar, se les trata como a un usuario remoto más. Es la opción predeterminada.
    • no_root_squash: Deshabilita la característica anterior.
    • sync: Evita responder peticiones antes de escribir los cambios pendientes en disco. Es la opción predeterminada.
    • async: Deshabilita la característica anterior. Mejora el rendimiento a cambio de que exista el riesgo de corrupción en los archivos o, incluso, en todo el sistema de archivos, si se produjese una interrupción del fluido eléctrico o un bloqueo del sistema.
    • subtree_check: Cuando el directorio compartido es un subdirectorio de un sistema de archivos mayor, NFS comprueba los directorios por encima de éste para verificar sus permisos y características. Es la opción predeterminada.
    • no_subtree_check: Deshabilita la característica anterior, lo que hace que el envío de la lista de archivos sea más rápido, pero puede reducir la seguridad.

En nuestro caso, incluiremos estas dos nuevas líneas en el archivos /etc/exports:

/home *(rw,sync,no_root_squash,no_subtree_check)
/var/compartido *(rw,sync,no_subtree_check)

Y para lograrlo, recurriremos, como es habitual, al editor de textos nano:

1

Abrimos el editor con privilegios de administración.

Una vez abierto el archivo, incluimos las líneas que indicamos más arriba:

2

Para salir, guardando los cambios, usamos la combinación de teclas Ctrl + X.

Iniciar/reiniciar el servicio NFS

Siempre que hagamos cambios en el archivo /etc/exports, necesitaremos reiniciar el servicio para que éstos sean efectivos. Lo conseguiremos escribiendo la siguiente orden en la ventana de terminal:

sudo /etc/init.d/nfs-kernel-server restart

En nuestro caso, como es la primera vez, en lugar de reiniciarlo, sencillamente lo iniciaremos. Es decir, la orden que escribiremos en la ventana de terminal es la siguiente:

sudo /etc/init.d/nfs-kernel-server start

1

Servicio iniciado.

Crear un archivo en una carpeta compartida

Después de configurar el servidor, tendremos que hacer lo propio con los clientes. Sin embargo, para que podamos comprobar que todo es correcto una vez completada dicha operación, sería conveniente disponer de algún contenido en una de las carpetas compartidas. Así comprobaremos que el contenido está accesible.

Por lo tanto, nos dirigimos a /var/compartido y creamos un archivo cualquiera.

1

En este caso, nos hemos decantado por el oportuno nombre de Documento compartido en el servidor.txt.


Anterior

Contenido

Siguiente