NFS (Network file system) nos permite utilizar un directorio remoto como si estuviera en nuestra propia máquina.
Hay una parte servidora que es el que ofrece el directorio y una parte cliente que monta el directorio.
Preparación (esto es un ejemplo concreto):
Lo primero es instalar tanto en la parte servidora como en el cliente el paquete nfs-common:
#apt-get install nfs-common
En la parte servidora hay que instalar algo más:
#apt-get install nfs-kernel-server
En esta parte servidora estará el demonio NFS a la escucha de los puertos UDP y TCP número 2049.
Podemos ver si todo va bien en el servidor:
#rpcinfo -p
Un posible error puede ser este:
rpcinfo: no se puede comunicar con el asignador de puertos: RPC:
# ./portmap stop
Parando portmap: [FALLA]
# ./portmap start
Iniciando portmap: [ OK ]
# rpcinfo -p
programa vers proto puerto
100000 2 tcp 111 portmapper
100000 2 udp 111 portmapper
Conviene también ver si el sistema admite un filesystem de tipo NFS:
#cat /proc/filesystems
(Buscar nfs).
Si no aparece tendremos que cargar el módulo NFS en el Kernel:
#modprobe nfs
Si todo ha ido bien, el demonio estará escuchando los puertos TCP y UDP 2049 y portmap esperará instrucciones en el puerto 111.
Ofrecer los directorios del servidor:
En el servidor, editamos el fichero /etc/exports e indicamos el directorio a exportar.
Por ejemplo:
/home/ficheros nombre-servidor(rw,sync)
Esto indica que vamos a ofrecer /home/ficheros al servidor llamado nombre-servidor con opción de lectura-escritura.
/home/fichero nombre-servidor(ro,sync)
Sólo permitiría la lectura (read only)
Después de modificar el fichero habría que reiniciar el demonio:
#/etc/init.d/nfs restart
Si sólo hemos modificado el fichero también se puede hacer:
#exportfs -ra
Montar los ficheros o directorios en el cliente:
Creamos un directorio donde vamos a montar los ficheros remotos:
#mkdir /prueba
Montamos los ficheros o directorios remotos:
mount servidor-remoto:/home/ficheros /prueba
Si hay problemas podemos indicarle explícitamente que es NFS y también la versión:
mount -t nfs -o nfsvers=3 servidor-remoto:/home/ficheros /prueba
Por último podemos si el servidor remoto está escuchando la peticiones NFS:
rpcinfo -p servidor-remoto
Otros posibles problemas:
El servidor remoto puede estar en otra red y no conocer la ruta hacia tu red.
Comprobarlo haciendo un
#route
El firewall del servidor remoto no permite la conexión:
Comprobarlo deshabilitandolo para la prueba:
#service iptables stop
Si esto funciona habría que habilitar el firewall añadiendo antes la regla correspondiente.
Hacer que el mount sea "permanente":
Opción peligrosa porque si por culpa del servidor NFS no consigue hacer el mount, pues puede que nuestro servidor cliente de NFS no arranque.
Si lo queremos hacer editamos el /etc/fsmount y añadimos:
servidor-remoto:/home/ficheros /prueba/ nfs defaults 0 0
No hay comentarios:
Publicar un comentario