Instalar NFS en un servidor Ubuntu
14.04 LTS
La instalación en
el servidor es tan sencilla como abrir una ventana de terminal y ejecutar el
comando que instala los paquetes anteriores:
sudo apt-get install nfs-kernel-server nfs-common rpcbind
El sistema nos informa de qué otros paquetes se necesitan
añadir para que la instalación sea satisfactoria (dependencias) y qué espacio
de almacenamiento deberá utilizar en el disco.
La forma más sencilla de poner en funcionamiento NFS es
reiniciando el equipo. Lo podemos hacer de muchas formas pero, ya que estamos
usando la terminal, bastará con escribir la siguiente orden:
Comprobar la instalación
El archivo/proc/filesystems contiene los sistemas de archivos soportados por el núcleo de Ubuntu.
Una vez que se
haya completado de nuevo el arranque del sistema, podemos comenzar por
comprobar si el núcleo de Ubuntu 14.04 LTScontiene ahora soporte para NFS. Lo lograremos con la siguiente
orden:
grep nfs4 /proc/filesystems
Instalar NFS en un cliente con
Ubuntu 14.04 LTS
Para lograrlo,
ejecutamos el siguiente comando, también desde la terminal:
sudo apt-get install nfs-common rpcbind
Como antes, apt-get nos informa de las
dependencias que habrá que añadir para que la instalación sea correcta y qué
espacio de almacenamiento necesitará en el disco.
Después, apt-get se limita a informarnos
del avance de la instalación y, finalmente, nos muestra el prompt del sistema.
Configurar el servidor NFS
Vamos a suponer
que necesitamos compartir con los clientes dos carpetas del servidor: /home y /compartido. Los pasos que deberemos seguir
son estos:
o
Crear la carpeta o las carpetas que aún no existan.
o
Exportar el contenido de las carpetas
o
Reiniciar el servicio NFS
o
Crear un archivo en una de las carpetas compartidas para comprobar que
es accesible desde los clientes
Crear las carpetas a compartir
La creación de
una carpeta para compartir es tan sencilla como utilizar la interfaz gráfica o
el comando mkdir en la consola (aquí nos inclinaremos por la segunda opción).
Además, como no
queremos que los usuarios experimenten problemas para acceder a los datos,
también cambiaremos el nombre del usuario y grupo propietarios de la carpeta,
para que no sean propiedad de nadie, y los permisos de acceso, para que todos
los usuarios dispongan de todos los permisos sobre ella.
Los comandos a
ejecutar serían estos:
sudo mkdir /compartidosudo chown nobody:nogroup /compartido
sudo chmod -R 777 /compartido
Exportar el contenido de las
carpetas
Después de esto, debemos
editar el archivo /etc/exports. Este es el archivo donde se indican a NFS las carpetas que vamos a
compartir (exportar, en la terminología NFS). Cada carpeta exportada debe
estar en una línea diferente de este archivo, aunque una línea muy larga puede
continuarse en la línea siguiente poniendo al final una barra invertida ”\”.
Las líneas tienen
el siguiente formato:
ruta cliente_1(opciones) cliente_2(opciones) …
En nuestro caso,
incluiremos estas dos nuevas líneas en el archivos/etc/exports:
/home *(rw,sync,no_root_squash,no_subtree_check)
/compartido *(rw,sync,no_subtree_check)
Una vez abierto el archivo, incluimos las líneas que
indicamos más arriba:
Iniciar/reiniciar
el servicio NFS
Siempre que hagamos cambios en
el archivo /etc/exports,
necesitaremos reiniciar el servicio para que éstos sean efectivos. Lo
conseguiremos escribiendo la siguiente orden en la ventana de terminal:
sudo /etc/init.d/nfs-kernel-server restart
En nuestro caso, como es la
primera vez, en lugar de reiniciarlo, sencillamente lo iniciaremos. Es decir,
la orden que escribiremos en la ventana de terminal es la siguiente:
sudo /etc/init.d/nfs-kernel-server start
Crear un archivo en una carpeta
compartida
Después de
configurar el servidor, tendremos que hacer lo propio con los clientes. Sin
embargo, para que podamos comprobar que todo es correcto después de completar
esa la operación, sería conveniente disponer de algún contenido en una de las
carpetas compartidas. Así comprobaremos que el contenido está accesible.
Por lo tanto, nos
dirigimos a /compartido y creamos un archivo
cualquiera
Acceder a la carpeta compartida con
NFS desde un cliente con Ubuntu 14.04
Crear el punto de montaje para las carpetas
compartidas
Lo primero que
tendremos que decidir es en qué lugar del árbol de directorios del equipo cliente se montarán las carpetas
compartidas por elservidor (recuerda que en GNU/Linux sólo existe un árbol de
directorios donde se van montando los diferentes volúmenes que necesitemos)
Para este
ejemplo, crearemos una subcarpeta, dentro de /mnt llamada nfs. En su interior, reproduciremos la
ruta original de las carpetas compartidas:
sudo mkdir -p /mnt/nfs/home
sudo mkdir -p /mnt/nfs/compartido
Quizás lo único
destacable en la sintaxis anterior sea el uso del argumento -p (también podemos
escribir –parents). Su cometido es doble: por un
lado evitar que se produzca un error si alguna de las carpetas ya existiese
(aunque este no es el caso); por el otro, crea automáticamente la parte de la
estructura del árbol que sea necesaria. Es decir, en la primera orden, se crea
la carpeta home, pero también la carpeta nfs (que aún no existía). En la
segunda, sólo se crea la carpeta compartido (en realidad, en este segundo caso podríamos haber evitado el
argumento).
Una última
precaución que deberemos tener en cuenta es que, aunque hayamos dado permisos
de escritura sobre las carpetas compartidas en la configuración NFS del servidor, no podremos
escribir en ellas si no disponemos de permisos sobre los puntos de montaje
donde se van a montar dichas carpetas en los clientes. Por lo tanto, antes de
continuar, cambiaremos también sus permisos:
sudo chmod -R 777 /mnt/nfs

Realizar el montaje de las carpetas
compartidas y comprobarlo
La siguiente
tarea que debemos completar, será montar las carpetas compartidas por el
servidor en el punto montaje que hemos creado en el apartado anterior. Para
ello, como es natural, recurrimos al comando mount:
sudo mount (dirección ip del servidor):/home /mnt/nfs/home
sudo mount(dirección ip del servidor):/compartido /mnt/nfs/compartido
Para comprobar
que todo ha ido bien, utilizaremos dos comandos: df ymount (aunque con cualquiera de
ellos sería suficiente).
El comando df nos ofrece información sobre
el espacio en disco utilizado y el que tenemos disponible en los sistemas de
archivos que tengamos montados en estos momentos (de todos, salvo que
indiquemos lo contrario en sus parámetros). Así pues, escribiremos lo siguiente
en la terminal:
df -h
La opción -h hace
que la salida sea más fácilmente comprensible para las personas (-h ó –human-readable).
Una última comprobación sería obtener el contenido de las
carpetas compartidas:
Crear
archivos en las carpetas compartidas
Para comprobar que todo
funciona correctamente, crearemos un par de archivos vacíos (uno en cada
carpeta) y después comprobaremos que se han creado.
touch /mnt/nfs/home/ejemplo1
touch /mnt/nfs/compartido/ejemplo2
Y para comprobar que la creación
se ha realizado con éxito, consultamos el contenido de ambas carpetas:
ls /mnt/nfs/homels /mnt/nfs/compartido
No hay comentarios:
Publicar un comentario