[Última revisión: 20 de febrero de 2020]
Objetivos:
- Instalar y configurar NFS (Network File System) en un servidor y en un cliente, ambos Ubuntu Server 18.04.
- En el servidor habilitaré un directorio, /var/compartiendo, a cuyos archivos tendrá acceso el cliente. Estos archivos le llegarán al cliente a /mnt/carpetaservidor.
[Lo que hay que escribir dentro de los archivos viene en cursiva]
MÁQUINA SERVIDOR (LA QUE PROPORCIONA LOS ARCHIVOS)
Se instala NFS:
leyre@leyreserver:~$ sudo apt install nfs-kernel-server
Se crea el directorio donde se pondrán los archivos que las máquinas clientes se descargarán:
leyre@leyreserver:~$ sudo mkdir /var/compartiendo
El directorio lo he creado en /var y se llama compartiendo.
Se asigna el usuario nobody y el grupo nogroup al directorio recién creado:
leyre@leyreserver:~$ sudo chown nobody:nogroup /var/compartiendo
Se le dan permisos al directorio /var/compartiendo:
leyre@leyreserver:~$ sudo chmod 775 /var/compartiendo
[Primer 7: permisos de lectura, escritura y ejecución para el dueño del archivo.
Segundo 7: permisos de lectura, escritura y ejecución para el grupo.
5: permisos de lectura y ejecución para otros.]
Se edita el archivo exports, el cual se encuentra en /etc:
leyre@leyreserver:~$ sudo nano /etc/exports
Se añade al final del texto, en una sola línea, la IP del cliente, de la siguiente manera:
/var/compartiendo IP_del_cliente_con_prefijo_de_red(rw,sync,fsid=0,crossmnt,no_subtree_check)
No se debe olvidar poner el prefijo de red en la IP.
Por ejemplo, si la IP de la máquina cliente es 192.168.1.72/24, se pondría en una sola línea:
/var/compartiendo 192.168.1.72/24(rw,sync,fsid=0,crossmnt,no_subtree_check)
Si se quiere compartir con más clientes, se añaden más IP en distintas líneas, cada IP en una línea. Por ejemplo:
/var/compartiendo 192.168.1.72/24(rw,sync,fsid=0,crossmnt,no_subtree_check) /var/compartiendo 192.168.1.75/24(rw,sync,fsid=0,crossmnt,no_subtree_check)
Al salir de la edición del archivo (pulsando Ctrl+x), se guarda.
Hay que cargar el archivo /etc/exports:
leyre@leyreserver:~$ sudo exportfs -a
leyre@leyreserver:~$ sudo service nfs-kernel-server start
MÁQUINA CLIENTE (LA QUE COGE LOS ARCHIVOS DEL SERVIDOR)
Se instala NFS:
leyre@leyreclient:~$ sudo apt install nfs-common
Se crea el directorio al que van a llegar los archivos compartidos por NFS. Dentro de / creo un directorio llamado mnt y dentro de mnt creo el directorio carpetaservidor:
leyre@leyreclient:~$ sudo mkdir -p /mnt/carpetaservidor
El -p se pone porque estamos creando dos directorios a la vez, mnt y carpetaservidor.
Hay que decirle a la máquina cliente que desde la IP del servidor, de su directorio /var/compartiendo, le lleguen los archivos al directorio /mnt/carpetaservidor.
leyre@leyreclient:~$ sudo mount IP_del_servidor:/var/compartiendo /mnt/carpetaservidor
Por ejemplo, si la IP del servidor fuese 192.168.1.53, se escribiría:
leyre@leyreclient:~$ sudo mount 192.168.1.53:/var/compartiendo /mnt/carpetaservidor
A partir de ahora se puede comprobar que cualquier archivo o directorio que se cree en el servidor, en /var/compartiendo, también estará en el cliente, en /mnt/carpetaservidor.