[TUTORIAL] Montaje bajo demanda de archivos remotos vía NFS y SSHFS

Spanish Forum

Moderator: tomeu

Post Reply
User avatar
Wibol
Level 5
Level 5
Posts: 584
Joined: Fri Nov 27, 2015 7:00 am
Location: España

[TUTORIAL] Montaje bajo demanda de archivos remotos vía NFS y SSHFS

Post by Wibol »

El montaje bajo demanda de archivos remotos pone a nuestra disposición los archivos de red cuando lo necesitemos y los desmonta al dejar de usarlos, optimizando así el uso de recursos.
Es necesaria la configuración previa de servidores según se describe en el tutorial Montaje manual de archivos remotos vía NFS y SSHFS.
Vamos a montar la carpeta /srv/Descargas compartida por los equipos remotos "Servidor1" con IP fija privada 192.168.1.2 y "Servidor2" con IP fija pública 123.123.123.123 a las que deseamos acceder desde "Cliente1", para que dichos recursos estén disponibles en los directorios locales /mnt/Servidor1/Multimedia/ y /mnt/Servidor2/Multimedia/.
* Los valores en color rojo deben sustituirse por los adecuados a cada caso.

Con SystemD (Recomendado)

A partir de Linux Mint 18.0 tenemos la posibilidad de llevar a cabo esta tarea con SystemD de una forma muy sencilla.

Protocolo NFS

Instalamos apt install nfs-common, creamos el directorio sudo mkdir -p /mnt/Servidor1/Multimedia y editamos sudo nano /etc/fstab para añadir la línea 192.168.1.2:/srv/Descargas /mnt/Servidor1/Multimedia nfs noauto,x-systemd.automount,x-systemd.device-timeout=30,_netdev 0 0 al archivo:

Code: Select all

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system>                                          <mount point>    <type> <options>         <dump> <pass>
# / was on /dev/sda2 during installation
UUID=990c5b9b-65db-4a3a-883a-c60478fac71c                /                ext4   errors=remount-ro 0      1
/swapfile                                                none             swap   sw                0      0
192.168.1.2:/srv/Descargas /mnt/Servidor1/Multimedia nfs noauto,x-systemd.automount,x-systemd.device-timeout=30,_netdev 0 0
Tras reiniciar, podemos comprobar que todo fue bien haciendo ls /mnt/Servidor1/Multimedia/ o pegando dicha dirección en el explorador de archivos, y desmontarlo una vez hemos acabado con sudo umount /mnt/Servidor1/Multimedia/.
Si encontramos problemas con la configuración, es recomendable comprobar que el Montaje manual de archivos remotos vía NFS funciona.

Protocolo SSHFS

El montaje es realizado en el cliente por el usuario root y por lo tanto, cuando intenta autenticarse frente al servidor mediante OpenSSH, busca las claves en el home de ese usuario. Podemos generar un nuevo par como root y copiarla a la máquina remota o simplemente copiar sudo cp ~/.ssh/id_rsa* /root/.ssh/ la de nuestro usuario actual a /root/, el cual ya figura en la lista remota de equipos conocidos.
Los nombres de las claves pueden ser distintos. Usar los correctos.
Instalamos el paquete apt install sshfs, creamos el directorio sudo mkdir -p /mnt/Servidor2/Multimedia y editamos sudo nano /etc/fstab para añadir la línea jose@123.123.123.123:/srv/Descargas /mnt/Servidor2/Multimedia fuse.sshfs noauto,nofail,allow_other,x-systemd.automount,x-systemd.device-timeout=30,_netdev 0 0 al archivo:

Code: Select all

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system>                                          <mount point>    <type> <options>         <dump> <pass>
# / was on /dev/sda2 during installation
UUID=990c5b9b-65db-4a3a-883a-c60478fac71c                /                ext4   errors=remount-ro 0      1
/swapfile                                                none             swap   sw                0      0
jose@123.123.123.123:/srv/Descargas /mnt/Servidor2/Multimedia fuse.sshfs noauto,nofail,allow_other,x-systemd.automount,x-systemd.device-timeout=30,_netdev 0 0
Tras reiniciar, podemos comprobar que todo fue bien haciendo ls /mnt/Servidor2/Multimedia/ o pegando dicha dirección en el explorador de archivos, y desmontarlo una vez hemos acabado con sudo umount /mnt/Servidor2/Multimedia/.
Si encontramos problemas con la configuración, es recomendable comprobar que el Montaje manual de archivos remotos vía SSHFS funciona.

Con AutoFS (Obsoleto)

Instalamos en nuestros equipos cliente apt install autofs la aplicación encargada de llevarlo a cabo.

Protocolo NFS

Instalamos apt install nfs-common, creamos el directorio sudo mkdir -p /mnt/Servidor1/Multimedia y editamos el archivo sudo nano /etc/auto.master para añadir la línea /mnt/Servidor1/ /etc/auto.srv1 --ghost --timeout=30. Agregamos una por cada servidor al que necesitemos acceder.

Code: Select all

#
# Sample auto.master file
# This is a 'master' automounter map and it has the following format:
# mount-point [map-type[,format]:]map [options]
# For details of the format look at auto.master(5).
#
#/misc	/etc/auto.misc
#
# NOTE: mounts done from a hosts map will be mounted with the
#	"nosuid" and "nodev" options unless the "suid" and "dev"
#	options are explicitly given.
#
#/net	-hosts
#
# Include /etc/auto.master.d/*.autofs
# The included files must conform to the format of this file.
#
+dir:/etc/auto.master.d
#
# Include central master map if it can be found using
# nsswitch sources.
#
# Note that if there are entries for /net or /misc (as
# above) in the included master map any keys that are the
# same will not be seen as the first read key seen takes
# precedence.
#
+auto.master
/mnt/Servidor1/ /etc/auto.srv1 --ghost --timeout=30
A continuación creamos el archivo al que hace referencia haciendo una copia de uno ya existente sudo cp /etc/auto.misc /etc/auto.srv1 y lo editamos sudo nano /etc/auto.srv1 para añadir la línea Multimedia -fstype=nfs 192.168.1.2:/srv/Descargas/. Agregamos una por cada recurso a montar desde el mismo servidor.

Code: Select all

#
# This is an automounter map and it has the following format
# key [ -mount-options-separated-by-comma ] location
# Details may be found in the autofs(5) manpage

Multimedia -fstype=nfs 192.168.1.2:/srv/Descargas/

# the following entries are samples to pique your imagination
#linux		-ro,soft,intr		ftp.example.org:/pub/linux
#boot		-fstype=ext2		:/dev/hda1
#floppy		-fstype=auto		:/dev/fd0
#floppy		-fstype=ext2		:/dev/fd0
#e2floppy	-fstype=ext2		:/dev/fd0
#jaz		-fstype=ext2		:/dev/sdc1
#removable	-fstype=ext2		:/dev/hdd
Ahora sólo tenemos que reiniciar el servicio con sudo service autofs restart para Mint 17.X e inferiores o sudo systemctl restart autofs para Mint 18.X y superiores, y comprobar que todo fue bien haciendo ls /mnt/Servidor1/Multimedia/ o pegando dicha dirección en el explorador de archivos.
Si encontramos problemas con la configuración, es recomendable comprobar que el Montaje manual de archivos remotos vía NFS funciona.

Protocolo SSHFS

El montaje es realizado en el cliente por el usuario root y por lo tanto, cuando intenta autenticarse frente al servidor mediante OpenSSH, busca las claves en el home de ese usuario. Podemos generar un nuevo par como root y copiarla a la máquina remota o simplemente copiar sudo cp ~/.ssh/id_rsa* /root/.ssh/ la de nuestro usuario actual a /root/, el cual ya figura en la lista remota de equipos conocidos.
Los nombres de las claves pueden ser distintos. Usar los correctos.
Creamos el directorio sudo mkdir -p /mnt/Servidor2/Multimedia y editamos el archivo sudo nano /etc/auto.master para añadir la línea /mnt/Servidor2/ /etc/auto.srv2 --ghost --timeout=30. Agregamos una por cada servidor al que necesitemos acceder.

Code: Select all

#
# Sample auto.master file
# This is a 'master' automounter map and it has the following format:
# mount-point [map-type[,format]:]map [options]
# For details of the format look at auto.master(5).
#
#/misc	/etc/auto.misc
#
# NOTE: mounts done from a hosts map will be mounted with the
#	"nosuid" and "nodev" options unless the "suid" and "dev"
#	options are explicitly given.
#
#/net	-hosts
#
# Include /etc/auto.master.d/*.autofs
# The included files must conform to the format of this file.
#
+dir:/etc/auto.master.d
#
# Include central master map if it can be found using
# nsswitch sources.
#
# Note that if there are entries for /net or /misc (as
# above) in the included master map any keys that are the
# same will not be seen as the first read key seen takes
# precedence.
#
+auto.master
/mnt/Servidor2/ /etc/auto.srv2 --ghost --timeout=30
A continuación creamos el archivo al que hace referencia haciendo una copia de uno ya existente sudo cp /etc/auto.misc /etc/auto.srv2 y lo editamos sudo nano /etc/auto.srv2 para añadir la línea Multimedia -fstype=fuse,allow_other :sshfs#jose@123.123.123.123:/srv/Descargas/. Agregamos una por cada recurso a montar desde el mismo servidor.

Code: Select all

#
# This is an automounter map and it has the following format
# key [ -mount-options-separated-by-comma ] location
# Details may be found in the autofs(5) manpage

Multimedia -fstype=fuse,allow_other :sshfs#jose@123.123.123.123:/srv/Descargas/

# the following entries are samples to pique your imagination
#linux		-ro,soft,intr		ftp.example.org:/pub/linux
#boot		-fstype=ext2		:/dev/hda1
#floppy		-fstype=auto		:/dev/fd0
#floppy		-fstype=ext2		:/dev/fd0
#e2floppy	-fstype=ext2		:/dev/fd0
#jaz		-fstype=ext2		:/dev/sdc1
#removable	-fstype=ext2		:/dev/hdd
Ahora sólo tenemos que reiniciar el servicio con sudo service autofs restart para Mint 17.X e inferiores o sudo systemctl restart autofs para Mint 18.X y superiores, y comprobar que todo fue bien haciendo ls /mnt/Servidor2/Multimedia/ o pegando dicha dirección en el explorador de archivos.
Si encontramos problemas con la configuración, es recomendable comprobar que el Montaje manual de archivos remotos vía SSHFS funciona.

Antes de realizar una consulta, no olvides:
Post Reply

Return to “Español (Spanish)”