GNU/Linux >> Tutoriales Linux >  >> Debian

Configuración de un servidor y cliente NFS en Debian Wheezy

Esta guía explica cómo configurar un servidor NFS y un cliente NFS en Debian Wheezy. NFS significa Sistema de archivos de red; a través de NFS, un cliente puede acceder (leer, escribir) a un recurso compartido remoto en un servidor NFS como si estuviera en el disco duro local. En este tutorial, le mostraré dos exportaciones de NFS diferentes, la exportación de un directorio de cliente que almacena archivos como usuario none/nogroup sin conservar los permisos del sistema de archivos y una exportación del directorio /var/www que conserva los permisos y la propiedad de los archivos, como requerido en la configuración de un servidor de alojamiento.

1 nota preliminar

Estoy usando dos sistemas Debian Wheezy aquí:

  • Servidor NFS:server.example.com, dirección IP:192.168.0.100
  • Cliente NFS:client.example.com, dirección IP:192.168.0.101

2 Instalación de NFS

servidor:

En el servidor NFS ejecutamos:

apt-get install nfs-kernel-server nfs-common

Luego creamos los enlaces de inicio del sistema para el servidor NFS y lo iniciamos:

cliente:

En el cliente podemos instalar NFS de la siguiente manera (en realidad es lo mismo que en el servidor):

apt-get install nfs-common

3 Exportación de directorios en el servidor

servidor:

Me gustaría hacer que los directorios /home/client1 y /var/www sean accesibles para el cliente para mostrar los dos modos de acceso diferentes del servidor NFS. El directorio /home/client1 se comparte en modo estándar, por lo que todos los archivos escritos en este directorio se almacenan como usuario none y group nogroup. Para el directorio /var/www utilizo la opción no_root_squash que indica al servidor nfs que conserve los permisos y la propiedad de los archivos. Esto es por ej. requerido cuando desea exportar el directorio /var/www de un servidor web administrado con ISPConfig 3

Primero, crearé el directorio /home/client1

mkdir /home/client1
chown nobody:nogroup /home/client1
chmod 755 /home/client1

Lo más probable es que el directorio /var/www exista en su servidor. Si no, créelo:

mkdir /var/www
chown root:root /var/www
chmod 755 /var/www

Ahora debemos modificar /etc/exports donde "exportamos" nuestros recursos compartidos NFS. Especificamos /home/client1 y /var/www como recursos compartidos de NFS y le decimos a NFS que acceda a /home/client1 como usuario none (para obtener más información sobre /etc/exports, su formato y las opciones disponibles, eche un vistazo a

man 5 exports

)

vi /etc/exports
/home/client1           192.168.0.101(rw,sync,no_subtree_check)
/var/www        192.168.0.101(rw,sync,fsid=0,crossmnt,no_subtree_check,no_root_squash)

(La opción no_root_squash hace que se acceda a /var/www como raíz).

Para aplicar los cambios en /etc/exports, reiniciamos el servidor kernel nfs

/etc/init.d/nfs-kernel-server restart

4 Montaje de los recursos compartidos NFS en el cliente

cliente:

Primero, creamos los directorios donde queremos montar los recursos compartidos de NFS, por ejemplo:

mkdir -p /mnt/nfs/home/client1
mkdir -p /var/www

Si el directorio /var/www ya existe en su servidor, detenga apache, cambie el nombre del directorio y cree un nuevo directorio vacío como punto de montaje

/etc/init.d/apache2 stop
mv /var/www /var/www_bak
mkdir -p /var/www

Posteriormente, podemos montarlos de la siguiente manera:

mount 192.168.0.100:/home/client1 /mnt/nfs/home/client1
mount 192.168.0.100:/var/www /var/www

Ahora debería ver los dos recursos compartidos de NFS en los resultados de

df -h
[[email protected] ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_server2-LogVol00
                      9.7G  1.7G  7.5G  18% /
tmpfs                 499M     0  499M   0% /dev/shm
/dev/sda1             504M   39M  440M   9% /boot
192.168.0.100:/home/client1   9.7G  1.7G  7.5G  19% /mnt/nfs/home/client1
192.168.0.100:/var/www
                      9.7G  1.7G  7.5G  19% /var/www
[[email protected] ~]#

y

mount
[[email protected] ~]# mount
/dev/mapper/vg_server2-LogVol00 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
/dev/sda1 on /boot type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
192.168.0.100:/home/client1 on /mnt/nfs/home/client1 type nfs (rw,vers=4,addr=192.168.0.100,clientaddr=192.168.0.101)
192.168.0.100:/var/www on /var/www type nfs (rw,vers=4,addr=192.168.0.100,clientaddr=192.168.0.101)
[[email protected] ~]#

5 Pruebas

En el cliente, ahora puede intentar crear archivos de prueba en los recursos compartidos de NFS:

cliente:

touch /mnt/nfs/home/client1/test.txt
touch /var/www/test.txt

Ahora ve al servidor y verifica si puedes ver ambos archivos de prueba:

servidor:

ls -l /home/client1/
[[email protected] ~]# ls -l /home/client1
total 0
-rw-r--r-- 1 nobody nogroup 0 Feb 02 16:58 test.txt
[[email protected] ~]#
ls -l /var/nfs
[[email protected] ~]# ls -l /var/www
total 0
-rw-r--r-- 1 root root 0 Feb 02 16:58 test.txt
[[email protected] ~]#

(Tenga en cuenta las diferentes propiedades de los archivos de prueba:se accede al recurso compartido NFS /home/client1 como nadie / ningún grupo y es propiedad de nadie / ningún grupo; se accede al recurso compartido /var/www como root, por lo tanto /var/www/test .txt es propiedad del usuario y del grupo root.)

6 Montaje de recursos compartidos NFS en el momento del arranque

En lugar de montar los recursos compartidos de NFS manualmente en el cliente, puede modificar /etc/fstab para que los recursos compartidos de NFS se monten automáticamente cuando se inicie el cliente.

cliente:

Abra /etc/fstab y agregue las siguientes líneas:

vi /etc/fstab
[...]
192.168.0.100:/home/client1  /mnt/nfs/home/client1   nfs      rw,sync,hard,intr  0     0
192.168.0.100:/var/www  /var/www   nfs      rw,sync,hard,intr  0     0

En lugar de rw,sync,hard,intr, puede usar diferentes opciones de montaje. Para obtener más información sobre las opciones disponibles, consulte

man nfs

Para probar si su /etc/fstab modificado está funcionando, desmonte los recursos compartidos y ejecute mount -a:

umount /mnt/nfs/home/client1
umount /var/www
mount -a

Ahora debería ver los dos recursos compartidos de NFS en los resultados de

df -h
[[email protected] ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_server2-LogVol00
                      9.7G  1.7G  7.5G  18% /
tmpfs                 499M     0  499M   0% /dev/shm
/dev/sda1             504M   39M  440M   9% /boot
192.168.0.100:/home/client1   9.7G  1.7G  7.5G  19% /mnt/nfs/home/client1
192.168.0.100:/var/www
                      9.7G  1.7G  7.5G  19% /var/www
[[email protected] ~]#

y

mount
[[email protected] ~]# mount
/dev/mapper/vg_server2-LogVol00 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
/dev/sda1 on /boot type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
192.168.0.100:/home/client1 on /mnt/nfs/home/client1 type nfs (rw,vers=4,addr=192.168.0.100,clientaddr=192.168.0.101)
192.168.0.100:/var/www on /var/www type nfs (rw,vers=4,addr=192.168.0.100,clientaddr=192.168.0.101)
[[email protected] ~]#

7 créditos

Este tutorial se basa en el tutorial del servidor Centos NFS de Falko Timme.

8 Enlaces

  • NFS de Linux:http://nfs.sourceforge.net/
  • Debian:http://www.debian.org/

Debian
  1. Configuración de un servidor y cliente NFS en Scientific Linux 6.3

  2. Configuración de un servidor y cliente NFS en CentOS 7.2

  3. Configuración de un servidor y cliente NFS en Debian 9 (Stretch)

  4. Configuración de un servidor y cliente NFS en CentOS 6.3

  5. Configuración de un servidor y cliente NFS en OpenSUSE 12.2

Cómo instalar y configurar el servidor NFS en Debian 11

Cómo instalar servidor y cliente NFS en Ubuntu

Cómo configurar el cliente y el servidor NFS en Linux

Cómo configurar el servidor y el cliente NTP en Debian 10

Cómo configurar el servidor y el cliente NTP en Debian 11

Cómo configurar el servidor y el cliente NFS en Debian 10