Si eres un usuario de Linux con habilidades moderadas o un principiante con un servidor, la forma principal de acceder a los archivos es con Samba. Muchos hacen esto debido a lo difícil que parece ser NFS. Hay tantos pasos y pequeñas cosas que debes hacer bien en comparación con algo como Samba o incluso FTP. El hecho de que muchos usuarios de Linux pasen por alto NFS es una verdadera lástima, ya que tiene muchas funciones y usos excelentes. Es por eso que hemos decidido eliminar la dificultad de configurar un servidor NFS. Desglosaremos cómo puede alojar recursos compartidos NFS en Linux y le explicaremos en profundidad cómo puede poner un servidor en funcionamiento.
Tabla de contenido
Instalación
Generalmente, cada distribución de Linux tiene las mismas herramientas NFS con algunas diferencias aquí y allá. Para que todo funcione, abra una terminal e instale los siguientes paquetes en su sistema. Estos paquetes instalarán la tecnología predeterminada necesaria para ejecutar el servidor, generarán los archivos de configuración predeterminados y, a veces, incluso configurarán otras cosas.
Ubuntu
sudo apt install nfs-kernel-server
Fedora
sudo dnf install nfs-utils system-config-nfs
Arch Linux
sudo pacman -S nfs-utils
Debian
sudo apt-get install nfs-kernel-server
OpenSUSE
sudo zypper install nfs-kernel-server
Otros Linux
El sistema de archivos, el cliente y el servidor NFS no es una tecnología nueva. Como resultado, podrá hacer que esto funcione fácilmente en casi cualquier distribución de Linux que exista. Si su sistema operativo no estaba cubierto, considere buscar «nfs utils» en el administrador de paquetes, o consulte la Wiki de su sistema operativo.
Servicios Systemd
La configuración de un servidor NFS puede ser diferente, según la distribución de Linux que esté utilizando. Por ejemplo, si instala el paquete Ubuntu o Debian NFS, los servicios systemd se configuran y configuran automáticamente para usted. Sin embargo, en algo como Arch Linux, SUSE o Fedora, etc., deberá hacerlo manualmente. A continuación, se explica cómo habilitar estos servicios.
Si está ejecutando Arch Linux, Open SUSE o Fedora (o cualquier distribución de Linux que no configura automáticamente los servicios de systemd para NFS) abra una terminal e ingrese estos comandos.
sudo systemctl enable rpcbind
sudo systemctl enable nfs-server sudo service rpcbind start sudo service nfs-server start
Configuración
Al instalar los paquetes NFS, el servidor está «configurado», pero eso no significa que los usuarios puedan acceder a él todavía. Para esto, los usuarios necesitan configurar exportaciones, ubicaciones de archivos, etc. Para comenzar, obtenga un shell de root en la terminal. Haz esto con: sudo -s
El archivo de exportación puede manejar cualquier tipo de directorio. De hecho, los usuarios pueden escribir fácilmente una ubicación directa en una carpeta que deseen compartir directamente en el sistema de archivos. El problema con esto es que representa un gran riesgo de seguridad. Es mucho más seguro tomar el contenido de un directorio y vincularlo a otro. Esto asegura que los permisos para carpetas y directorios en la carpeta / srv / no necesitan ser modificados para que todo sea seguro.
Por ejemplo, para configurar un recurso compartido NFS de la carpeta Imágenes de un usuario, haga lo siguiente:
mkdir -p /srv/nfs/pictures /home/username/Pictures/ mount --bind /home/username/Pictures/ /srv/nfs/pictures/
Utilice el ejemplo anterior para hacer tantos montajes de enlace como desee. Tenga en cuenta que no es necesario montar directorios desde carpetas de inicio. En su lugar, use ese ejemplo y sea creativo.
Con todo eso resuelto, ejecute estos comandos para que las monturas se peguen:
echo '#NFS Pictures Bind Mount' >> /etc/fstab
echo '/home/username/Pictures/ /srv/nfs/pictures/ none bind 0 0' >> /etc/fstab
Nota: deberá cambiar los comandos de eco para adaptarlos a sus propias monturas.
Con los montajes configurados, es hora de configurar el archivo de configuración de exportaciones. El archivo de exportación es muy importante, ya que aquí es donde deberá especificar cada archivo compartido para que lo utilice NFS.
nano /etc/exports
Dentro del archivo de exportación, vaya hasta el final y escriba lo siguiente:
/srv/nfs/pictures/ 192.168.0.0/255.255.255.0(rw,sync,no_subtree_check)
Siéntase libre de escribir tantas líneas como desee. Tenga en cuenta que cada recurso compartido necesita su propio montaje, entrada fstab y entrada / etc / export.
Nota: guarde el archivo de exportación con CTRL + O
Actualización de cambios
El servidor NFS está en funcionamiento, los archivos están en el lugar correcto y todo está listo para usar. Lo único que queda es actualizar los cambios realizados en el archivo de exportación. Este es un paso importante ya que el servidor NFS no actualizará los cambios realizados mientras se está ejecutando. Hacer cambios con: exportfs -rav
Si es necesario, reinicie el proceso del servidor dentro de systemd mediante el comando systemctl restart.
sudo systemctl restart nfs-server.
Conclusión
El sistema de archivos de red es una herramienta útil. Con él, los usuarios pueden tomar fácilmente archivos y directorios remotos y trabajar con ellos localmente como si fuera un disco duro físico. Esto es genial, ya que las herramientas del sistema de archivos de red de la competencia no brindan a los usuarios la misma ubicuidad y libertad.
A pesar de su utilidad, la mayoría de la gente prefiere usar Samba. Esto es comprensible, porque en comparación con Samba, NFS puede ser un poco molesto y tedioso de configurar. Sin embargo, si se enfrenta al difícil proceso de configuración, vale mucho más la pena.