Compartición de archivos con NFS
Introducción
NFS (Network File System) es el protocolo nativo de Unix/Linux para compartir
directorios en red. A diferencia de Samba, está orientado a entornos donde todos los sistemas son Linux o
Unix. El servidor exporta directorios mediante /etc/exports y los clientes los montan como si fueran
sistemas de archivos locales.
Configuración del servidor NFS
Instalación:
# apt install nfs-kernel-server # Debian/Ubuntu
# dnf install nfs-utils # RHEL/Rocky
# systemctl enable --now nfs-server
Definir exportaciones en /etc/exports:
# /etc/exports
/srv/nfs/datos 192.168.1.0/24(rw,sync,no_subtree_check)
/srv/nfs/publico *(ro,sync,no_subtree_check)
/home cliente1.ejemplo.com(rw,sync,no_root_squash)
Opciones de exportación más usadas:
rw/ro→ lectura-escritura / solo lecturasync→ confirmar escrituras en disco antes de responder al cliente (más seguro)async→ mejor rendimiento, pero riesgo de pérdida de datos en caídano_subtree_check→ desactiva la comprobación de subdirectorios (recomendado)-
root_squash→ el root del cliente se mapea al usuarionfsnobody(por defecto) -
no_root_squash→ el root del cliente conserva privilegios de root en el servidor (¡usar con cuidado!) all_squash→ todos los usuarios del cliente se mapean anfsnobody
Aplicar cambios sin reiniciar:
# exportfs -ra # releer /etc/exports y aplicar
$ exportfs -v # mostrar exportaciones activas
$ showmount -e localhost # listar exportaciones disponibles
Configuración del cliente NFS
Instalación:
# apt install nfs-common # Debian/Ubuntu
# dnf install nfs-utils # RHEL/Rocky
Montar un recurso NFS manualmente:
$ showmount -e 192.168.1.10 # ver qué exporta el servidor
# mkdir -p /mnt/nfs/datos
# mount -t nfs 192.168.1.10:/srv/nfs/datos /mnt/nfs/datos
$ df -h /mnt/nfs/datos # verificar el montaje
Montaje permanente en /etc/fstab:
192.168.1.10:/srv/nfs/datos /mnt/nfs/datos nfs defaults,_netdev 0 0
La opción _netdev indica que el montaje requiere red, evitando fallos en el arranque si la red no está
disponible aún.
Desmontar:
# umount /mnt/nfs/datos
autofs — Montaje automático bajo demanda
autofs monta los recursos NFS automáticamente cuando se accede a ellos y los desmonta tras un periodo
de inactividad, ahorrando recursos.
# apt install autofs
/etc/auto.master — mapa maestro:
/mnt/nfs /etc/auto.nfs --timeout=60
/etc/auto.nfs — mapa de montajes:
datos -rw,sync 192.168.1.10:/srv/nfs/datos
# systemctl enable --now autofs
# ls /mnt/nfs/datos # el acceso dispara el montaje automático
NFS vs Samba: cuándo usar cada uno
- Usa NFS en entornos donde todos los sistemas son Linux/Unix: mejor rendimiento y menor complejidad.
- Usa Samba cuando hay clientes Windows en la red o se necesita integración con dominios Active Directory.