Implementación de un sistema de archivos remoto en el mundo Unix, es un servicio sin estados en el que cada operación es autocontenida y con transparencia en el acceso a ficheros

  • Utiliza UDP o TCP
  • Cliente: Núcleo (VFS: Virtual File System)
  • Servidor: Aplicación de usuario

1) Software necesario:

Para la implantación de este servicio necesitaremos:

  • nfs-kernel-server
  • nfs-common
  • portmap
sudo apt-get install nfs-kernel-server nfs-common portmap

2) Comprobación de los servicios activos:

sudo service nfs-server status

 

rpcinfo -p

3) Creación y configuración del directorio compartido:

mkdir /tmp/carl404-nfs

Añadimos las condiciones al final del fichero /etc/exports

/tmp/carl404-nfs                          192.168.56.0/24(ro,no_root_squash,insecure)

  • 192.168.56.0/24: Se puede marcar tanto una subred, como una IP concreta.
  • ro: (Read Only), los clientes sólo serán capaces de leer del directorio, sin realizar escrituras
  • no_root_squash: Si el usuario accede como root, sus privilegios pasan a ser nobody
  • insecure: ya que mi cliente es macOS Sierra, me obliga a añadir esta opción, sino, obtendria un error de permission denied

A continuación dejaré las opciones más importantes para la conexión NFS

4) Otras opciones de conexión:

root_squash: las peticiones como usuario root pasan a ser de usuario nobody (por defecto).

no_root_squash: ignora root_squash.

ro: Sólo permite montar el volumen como de solo lectura.

rw: Permite montar el volomen como lectura/escritura.

link_relative: Convierte los enlaces absolutos a enlaces relativos mediante prefijos ../

link_absulute: Respeta los enlaces absolutos.

map_identity: El servidor asume que el mapa de usuarios del cliente y del servidor es el mismo.

map_daemon: Usa el demonio ugidd para traducir los mapas de usuarios.

5) Conexión desde el cliente (macOS):

sudo mount -t nfs 192.168.56.101:/tmp/carl404-nfs nfs

Una vez realizada esta conexión, el servidor NFS, aparecerá como cualquier otra unidad extraíble.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *