Introducción
Network File System (NFS) es un sistema de archivos que permite el acceso local a archivos remotos desde múltiples ubicaciones dentro de una red. Para este acceso, NFS utiliza una arquitectura cliente/servidor estándar, que admite el uso compartido entre máquinas Linux, independientemente de su distribución.
En este tutorial, aprenderá a instalar y configurar el servidor NFS y los clientes en Ubuntu.
Requisitos previos
- Dos o más máquinas Ubuntu
- Acceso a la línea de comandos/terminal
- Privilegios de Sudo en todas las máquinas
Configurar el lado del host NFS
Los pasos de este tutorial cubren la instalación y configuración de NFS en Ubuntu y otras distribuciones basadas en Debian. Otras distribuciones de Linux, como Fedora y CentOS/RHEL, presentan una sintaxis de comandos ligeramente diferente. Sin embargo, el proceso sigue el mismo patrón.
Instalar servidor kernel NFS
Comience a configurar NFS eligiendo una máquina host.
A continuación, actualice el repositorio de paquetes:
sudo apt update
Luego, instale el servidor kernel NFS en la máquina que eligió con el siguiente comando:
sudo apt install nfs-kernel-server
Escriba "y" y presione ENTER para iniciar la instalación.
Configurar directorio compartido
En la máquina host, cree un directorio que desee compartir con el sistema cliente. Elige el nombre que quieras.
sudo mkdir -p /mnt/nfsdir
Cambie el usuario propietario y el grupo a nadie y ningún grupo . Esta configuración hace que la carpeta sea pública:
sudo chown nobody:nogroup /mnt/nfsdir
Establecer permisos en 777 , para que todos puedan leer, escribir y ejecutar archivos en esta carpeta:
sudo chmod 777 /mnt/nfsdir
Edite el archivo de exportación NFS para otorgar acceso al servidor a los clientes
El permiso para acceder a la máquina del servidor host se otorga en el archivo de exportación ubicado en /etc directorio. Abra el archivo con un editor de texto de su elección, este tutorial usa Vi:
sudo vi /etc/exports
Para cada cliente al que desee otorgar acceso, agregue esta línea al archivo:
/mnt/nfsdir clientIP(rw,sync,no_subtree_check)
Salga del archivo y guarde los cambios
Las opciones entre paréntesis tienen las siguientes funciones:
- “w ” proporciona a los clientes acceso de lectura y escritura a los directorios del servidor.
- “sincronizar ” obliga a NFS a escribir cambios antes de responder al cliente. Esta opción garantiza que el estado del host se presente con precisión a los clientes.
- “no_subtree_check ” deshabilita subárbol comprobación. El proceso del subárbol puede causar problemas cuando los usuarios cambian el nombre de los archivos.
Exportar directorio compartido
Después de realizar las modificaciones necesarias en /etc/exports , utilice exportfs
comando para exportar todos los directorios compartidos que registró en ese archivo:
sudo exportfs -a
A continuación, reinicie el servidor NFS Kernel para aplicar los cambios a la configuración:
sudo systemctl restart nfs-kernel-server
Si usa UFW, debe permitir que los clientes accedan al servidor:
sudo ufw allow from [clientIP or clientSubnetIP] to any port nfs
La salida confirma la adición de la dirección IP:
Para asegurarse de que completó con éxito la operación, escriba:
sudo ufw status
Busque en el resultado la dirección IP que agregó:
Configuración del lado del cliente NFS
Realice los siguientes pasos en todas las computadoras que desee configurar como clientes para compartir.
Instalar NFS común
Para habilitar NFS en las máquinas cliente, instale el paquete común de NFS:
sudo apt update
sudo apt install nfs-common
Escriba "y" y presione ENTER para iniciar la instalación.
Configurar un punto de montaje
La máquina cliente necesita un punto de montaje para el directorio compartido exportado por el servidor.
Cree un directorio escribiendo:
sudo mkdir -p /mnt/nfsdir_client
Para montar el directorio compartido en el punto de montaje, use el siguiente comando:
sudo mount host_IP:/mnt/nfsdir /mnt/nfsdir_client
Usa el df -h
comando para verificar si montó la carpeta con éxito:
Cuando ya no necesite la carpeta compartida, desmóntela escribiendo:
sudo umount /mnt/nfsdir_client
Montar directorios compartidos NFS en el arranque del sistema operativo
Si desea que las carpetas permanezcan montadas incluso después de reiniciar la máquina, deberá agregarlas a /etc/fstab archivo.
Para editar el archivo /etc/fstab, ingrese:
sudo vim /etc/fstab
Copie la siguiente línea al final del archivo, reemplazando "host_IP" con la dirección IP real del host:
IP_host:/mnt/nfsdir /mnt/nsfdir_client nfs auto,nofail,noatime,nolock,intr,tcp,actimeo=1800 0 0
Agregue esta línea para cada carpeta que necesite. De esta forma, todas las carpetas de la lista se montarán automáticamente en cada arranque.