Resumen
En esta publicación, lo guiaremos a través de un proceso sobre cómo configurar el servidor NFS en Debian 10 y el proceso es el mismo para Debian 11. Anteriormente en este sitio, también cubrimos el otro método donde mostramos el proceso de montaje de la red compartida drive en Linux, pero con este método usamos herramientas cifs-utils (ENLACE). El principio detrás de este proceso es básicamente el mismo:monte una carpeta o unidad compartida en red desde otra máquina y acceda a ella a través de la red local.
Servidor y cliente NFS
Las herramientas NFS consisten en la aplicación del servidor y la aplicación del cliente. La aplicación del servidor, por supuesto, la instala en la máquina cuya carpeta o unidad desea compartir a través de la red. La aplicación cliente que instala en todas las demás máquinas desde las que utiliza para acceder a la carpeta/unidad compartida de red en el servidor.
Una pequeña nota:
Para que esto funcione, su máquina servidor debe tener una dirección IP estática.
Configurar servidor NFS
Instalación del servidor NFS
En su máquina servidor, ejecute este comando para instalar NFS:
sudo apt install nfs-kernel-server
Siguiente paso:configuración del servidor NFS. Ejecute este comando para acceder a la configuración del servidor NFS:
sudo nano /etc/exports
La sintaxis de configuración debe parecerse a esto (la línea de configuración se explicará en detalle). Explicaré la sintaxis con más detalle a continuación:
/home/sharedfolder 192.168.100.0/24(rw,sync,no_subtree_check)
Guarda el archivo y cierra. Luego ejecute el comando:
sudo exportfs -ra
Y reinicie el servidor NFS:
sudo systemctl restart nfs-kernel-server.service
Y esa es la parte de configuración del servidor NFS. El archivo debe verse así:
Nota para la carpeta compartida
Además, para la carpeta que compartió... si la carpeta fue creada por un usuario root, o con un usuario con los privilegios sudo y desde la máquina cliente, está usando una cuenta que no es root, podría haber problemas de lectura y escritura. al acceder a la carpeta desde el cliente.
En ese caso, debe cambiar los permisos de directorio y la propiedad de la carpeta compartida del servidor de esta manera:
sudo chown -R nobody:nogroup /home/sharedfolder/ sudo chmod -R 755 /home/sharedfolder/
Esto significa que la carpeta compartida no es propiedad de ninguna cuenta o grupo local y tiene permisos de lectura y escritura.
Otra cosa
Si está ejecutando un cortafuegos ufw en su servidor, también debemos agregar una regla de cortafuegos para que desde la máquina cliente podamos acceder a la carpeta compartida. Ejecute este comando para el firewall ufw:
sudo ufw allow from 192.168.100.0 to any port nfs
La dirección IP debe ser de su grupo de IP.
Sintaxis de configuración del servidor NFS
Ok, cubramos la configuración del servidor NFS. Entonces, en el párrafo anterior usé este comando como ejemplo:
/home/sharedfolder 192.168.100.0/24(rw,sync,no_subtree_check)
Esta sintaxis de configuración es para un escenario en el que desea que su carpeta compartida NFS esté disponible en toda la red local para cualquier persona con un grupo de direcciones IP 192.168.100.0.
Cubriremos esta sintaxis en detalle:
- /inicio/carpeta compartida – esto es, por supuesto, la ruta del directorio de la carpeta que desea compartir a través de la red. Esto también puede ser cualquier directorio en el sistema (reemplace la carpeta compartida con el nombre de la carpeta real)
192.168.100.0/24 – la dirección IP de clientes/grupo de redes y máscara de subred. Arriba ya mencioné un caso con la dirección IP en la que desea que cualquier cliente de toda la red local acceda a la carpeta compartida NFS. En este caso, debe conocer el grupo de IP de su enrutador. Esto también se puede configurar para que solo los clientes específicos puedan acceder al recurso compartido de red NFS. Para que esto funcione, los clientes también deben tener una dirección IP estática que pueda asignar usted mismo. En este caso, una sintaxis se vería así:- /inicio/carpeta compartida 192.168.100.14(rw,sync,no_subtree_check)
- Y si necesita tener un escenario para que varios clientes específicos accedan al recurso compartido de NFS, debe agregar varias líneas para cada cliente individualmente... así:
- /inicio/carpeta compartida 192.168.100.14(rw,sync,no_subtree_check)
- /inicio/carpeta compartida 192.168.100.38(rw,sync,no_subtree_check)
- (rw,sync,no_subtree_check) – en esta parte, entre estos corchetes estamos agregando las propiedades compartidas como los permisos del cliente y etc…
- rw -Esta opción le da a la máquina cliente acceso de lectura y escritura a la carpeta compartida.
- sincronizar – Esta opción obliga a NFS a escribir cambios en el disco antes de responder. Esto da como resultado un entorno más estable y coherente, ya que la respuesta refleja el estado real del volumen remoto. Sin embargo, también reduce la velocidad de las operaciones con archivos.
- no_subtree_check – Esta opción evita la verificación de subárboles, que es un proceso en el que el servidor debe verificar si el archivo aún está disponible en el árbol exportado para cada solicitud. Esto puede causar muchos problemas cuando se cambia el nombre de un archivo mientras el cliente lo tiene abierto. En casi todos los casos, es mejor deshabilitar la verificación de subárboles.
Instalación del cliente NFS y montaje del recurso compartido de red NFS
En la máquina cliente, ejecute estos comandos para instalar el cliente NFS:
sudo apt update sudo apt install nfs-common
El siguiente paso es crear un punto de montaje en la máquina cliente. El siguiente comando se usa como ejemplo. Esta también puede ser cualquier ubicación:
sudo mkdir /mnt/nfs-share
Ahora podemos montar nuestra carpeta compartida de red NFS:
sudo mount 192.168.100.119:/home/sharedfolder/ /mnt/nfs-share
Nuevamente, la IP en el comando anterior debe ser de su servidor y este comando debe montar el recurso compartido de red en su máquina cliente. La carpeta compartida debería aparecer en el administrador de archivos de inmediato... Así (Imagen de ejemplo a continuación):
Probar el recurso compartido de red NFS con el terminal
Por supuesto, puede probar el recurso compartido de red utilizando el administrador de archivos y a través del entorno de escritorio. Pero, también me gusta probar el recurso compartido a través de la terminal. La prueba del método con la terminal también es buena para el escenario en el que no tiene un monitor y accede a un servidor remoto.
sudo touch /mnt/nfs-share/test.txt
Este comando creará un archivo .txt en nuestro punto de montaje y ese archivo debería aparecer de inmediato en nuestro servidor. Como en las siguientes imágenes:
Montar el recurso compartido de red en el arranque
El comando de montaje que usamos anteriormente, básicamente, fue un montaje manual y no es permanente. Lo que significa que, tan pronto como reinicie o apague su máquina cliente... el montaje desaparecerá y deberá volver a montarlo manualmente.
Sin embargo, hay una forma de montarlo de forma permanente y es con la configuración para montar el recurso compartido de red en el arranque. Entonces, cuando su máquina cliente arranque, automáticamente montará el recurso compartido de red.
Este método es opcional y lo haces si quieres.
!!!PRESTE ATENCIÓN EN ESTE PASO!!!
Si no lo hace correctamente, podría bloquear su máquina en el próximo reinicio. El archivo fstab es el archivo de configuración del proceso de arranque que también contiene sus unidades de disco duro. Por lo tanto, si el archivo no está configurado correctamente, podría evitar que la máquina arranque.
En la máquina cliente, ejecute este comando para acceder al archivo fstab:
sudo nano /etc/fstab
Entonces... AL FINAL DEL ARCHIVO agregue esta línea de comando:
192.168.100.119:/home/sharedfolder /mnt/nfs-share nfs rw,soft,noatime,x-gvfs-show
Debería verse así:
Guarda el archivo y cierra. Y eso es todo. Las dos primeras partes del comando le dicen al cliente que acceda al servidor y que monte la carpeta compartida de red en el punto de montaje del cliente. Para este método de montaje, usamos bastantes opciones y propiedades de montaje y eso es para hacer que el montaje sea lo más estable posible y evitar problemas de lectura y escritura. Puede consultar la explicación de la opción en la página del manual de NFS en la terminal:
man nfs
o en las versiones web de la página de manual de NFS:manpage1 y manpage2
Resumen
Ese fue el proceso de cómo configurar el servidor NFS en Debian 10 y en Debian 11. Aquí, no solo cubrimos el proceso de instalación y la configuración para el cliente y la máquina del servidor, sino que también cubrimos el proceso de montaje y cómo acceder al recurso compartido NFS. y algunos riesgos potenciales también.
Muchas gracias por su tiempo.