Menú

Esta página se ha traducido automáticamente. Algunos contenidos pueden no ser perfectos.

Comparte tu opinión

Servidor NFS de Linux: cómo configurar el servidor y el cliente

Tabla de contenido

Compartir esta página

blank avatar
Jeff Whitaker

¿Qué es el servidor NFS de Linux?

Network File Sharing (NFS) es un protocolo que te permite compartir directorios y archivos con otros clientes Linux a través de una red. Los directorios compartidos normalmente se crean en un servidor de archivos que ejecuta el componente servidor NFS. Los usuarios agregan archivos a ellos, que luego se comparten con otros usuarios que tienen acceso a la carpeta.

Un recurso compartido de archivos NFS se monta en una máquina cliente, haciéndolo disponible igual que las carpetas que el usuario creó localmente. NFS es especialmente útil cuando el espacio en disco es limitado y necesitas intercambiar datos públicos entre computadoras cliente.

Esto es parte de nuestra serie de artículos sobre Linux on Azure.

En este artículo, vas a aprender:

Tutorial rápido #1: Configuración de un servidor NFS con un recurso compartido NFS

Vamos a ver cómo configurar un servidor NFS y crear un recurso compartido de archivos NFS, que las máquinas cliente pueden montar y acceder.

Contenido relacionado: Build Your Own Enterprise NFS Service

Instalación del servidor NFS

Aquí tienes cómo instalar el NFS Kernel—este es el componente servidor que permite a una máquina exponer directorios como recursos compartidos NFS.

En Ubuntu y Debian:

sudo apt-get update

sudo apt install nfs-kernel-server

En CentOS y Fedora:

yum -y install nfs-utils

apt-get install nfs-kernel-server

Crear directorio raíz NFS

Ahora vamos a crear el directorio raíz de los recursos compartidos NFS, esto también se conoce como carpeta de exportación.

sudo mkdir /mnt/myshareddir

Configura los permisos para que cualquier usuario en la máquina cliente pueda acceder a la carpeta (en la vida real deberías considerar si la carpeta necesita una configuración más restrictiva).

sudo chown nobody:nogroup /mnt/myshareddir #no-one is owner

sudo chmod 777 /mnt/myshareddir #everyone can modify files

Definir acceso para clientes NFS en el archivo de exportación

Para dar acceso a los clientes NFS, vamos a definir un archivo de exportación. El archivo normalmente se encuentra en /etc/exports

Edita el archivo /etc/exports en un editor de texto y agrega una de las siguientes tres directivas.

Todas las directivas de abajo usan las opciones rw, que habilita tanto lectura como escritura, sync, que escribe los cambios en disco antes de permitir a los usuarios acceder al archivo modificado, y no_subtree_check, que significa que NFS no comprueba si cada subdirectorio es accesible para el usuario.

Para habilitar acceso a un solo cliente

/mnt/myshareddir {clientIP}(rw,sync,no_subtree_check)

Para habilitar acceso a varios clientes

/mnt/myshareddir {clientIP-1}(rw,sync,no_subtree_check)

{clientIP-2}(...)

{clientIP-3}(...)

Para habilitar acceso a toda una subred

/mnt/myshareddir {subnetIP}/{subnetMask}(rw,sync,no_subtree_check)

Hacer que el recurso compartido NFS esté disponible para los clientes

Ahora puedes poner el directorio compartido a disposición de los clientes usando el comando exportfs. Después de ejecutar este comando, el NFS Kernel debe reiniciarse.

sudo exportfs -a #making the file share available

sudo systemctl restart nfs-kernel-server #restarting the NFS kernel

Si tienes un firewall habilitado, también necesitas abrir el acceso al firewall usando el comando sudo ufw allow.

Tutorial rápido #2: Configuración de NFS en la máquina cliente y montaje de un recurso compartido NFS

Ahora que ya configuramos el servidor NFS, vamos a ver cómo compartir una carpeta, definida como recurso compartido NFS, con una computadora Linux montándola en la máquina local.

Instalación de paquetes de cliente NFS

Aquí tienes los paquetes que necesitas instalar para poder montar un recurso compartido NFS en una máquina Linux local.

En Ubuntu y Debian:

sudo apt update

sudo apt install nfs-common

En CentOS y Fedora:

sudo yum install nfs-utils

Montar el recurso compartido de archivos NFS temporalmente

Puedes montar la carpeta NFS en una ubicación específica de la máquina local, conocida como punto de montaje, usando los siguientes comandos.

  1. Crea un directorio local—este será el punto de montaje para el recurso compartido NFS. En nuestro ejemplo vamos a llamar a la carpeta /var/locally-mounted.
sudo mkdir /var/locally-mounted
  1. Monta el recurso compartido de archivos ejecutando el comando mount, así: No hay salida si el comando es exitoso.
sudo mount -t nfs {IP of NFS server}:{folder path on server} /var/locally-mounted

Por ejemplo:

sudo mount -t nfs 192.168.20.100:/myshareddir /var/locally-mounted

El punto de montaje ahora se convierte en la raíz del recurso compartido de archivos montado, y debajo deberías encontrar todos los subdirectorios almacenados en el recurso compartido de archivos NFS en el servidor.

  1. Para verificar que el recurso compartido NFS está montado correctamente, ejecuta el comando mount o df -h.

Montar recursos compartidos de archivos NFS permanentemente

Los directorios NFS remotos se pueden montar automáticamente cuando se inicia el sistema local. Puedes definir esto en el archivo /etc/fstab. Para asegurarte de que un recurso compartido de archivos NFS se monte localmente al arrancar, tienes que agregar una línea a este archivo con los detalles relevantes del recurso compartido.

Para montar automáticamente recursos compartidos NFS en Linux, haz lo siguiente:

  1. Crea un directorio local que se usará para montar el recurso compartido.
sudo mkdir /var/locally-mounted
  1. Edita el archivo /etc/fstab usando el comando nano o cualquier editor de texto.
  2. Agrega una línea definiendo el recurso compartido NFS. Inserta un carácter de tabulación entre cada parámetro. Debe aparecer como una sola línea sin saltos de línea.

Los últimos tres parámetros indican las opciones NFS (que dejamos por defecto), el volcado del sistema de archivos y la comprobación del sistema de archivos (normalmente no se usan así que los dejamos en 0).

{IP of NFS server}:{folder path on server} /var/locally-mounted nfs defaults 0 0
  1. Ahora monta el recurso compartido usando el siguiente comando. La próxima vez que se inicie el sistema, la carpeta se montará automáticamente.
mount /var/locally-mounted

mount {IP of NFS server}:{folder path on server}

Azure NetApp Files: Un reemplazo de servidor NFS basado en la nube

Microsoft Azure, un popular servicio público en la nube, te permite configurar recursos compartidos de archivos NFS en la nube y acceder a ellos desde máquinas en tu centro de datos local o desplegadas en la nube de Azure.

Azure NetApp Files es un servicio en la nube que ofrece almacenamiento de archivos de alto rendimiento para la gran empresa. Es compatible con las versiones 3.1 en adelante de NFS.

Azure NetApp Files admite todo tipo de cargas de trabajo de producción y proporciona alta disponibilidad integrada. Puedes elegir el nivel y el rendimiento del servicio, y hacer instantáneas de tus datos al instante.

Rendimiento extremo de archivos

Aprovecha la tecnología líder de NetApp para migrar las cargas de trabajo de archivos Linux y Windows más exigentes a Azure. Azure NetApp Files ofrece latencia inferior al milisegundo y un rendimiento equivalente al que lograrías con un servidor local bare metal.

Azure NetApp Files ofrece tres niveles de rendimiento: Standard, Premium y Ultra. Puedes aprovisionar recursos compartidos de archivos en cualquiera de los niveles con un solo clic.

Gestión de datos integrada

Azure NetApp Files se integra con cargas de trabajo empresariales complejas como SAP HANA, computación de alto rendimiento (HPC), aplicaciones LOB y VDI. Para estas y muchas más cargas de trabajo empresariales, ofrece gestión de datos integrada y conocimiento de aplicaciones para backups e instantáneas.

Gestión centralizada

Puedes gestionar recursos compartidos de archivos usando Azure Portal o CLI, comandos PowerShell o una API de REST, igual que cualquier otro servicio de Azure. Azure NetApp Files admite múltiples protocolos de almacenamiento en un solo servicio, incluyendo NFSv3, SMB3.1.x y NFSv4.1. Esto te permite migrar cargas de trabajo a la nube en un modelo “lift and shift”, sin necesidad de hacer cambios en el código.

Migra con confianza

Cuando migras grandes cargas de trabajo empresariales, la transferencia de datos con rsync no es suficiente. Con Azure NetApp Files puedes gestionar fácilmente la transferencia de datos y la sincronización a gran escala.

El servicio proporciona cifrado de datos compatible con FIPS 140-2, control de acceso basado en roles (RBAC), autenticación de Active Directory y listas de control de acceso (ACL). Azure NetApp Files cumple con las principales certificaciones del sector como HIPAA, SOC y GDPR. Estas y otras características de clase empresarial significan que puedes migrar cualquier carga de trabajo empresarial a la nube con total confianza.

¿Quieres empezar? Prueba Azure NetApp Files tú mismo con una demo gratuita

Drift chat loading