Como montar carpetas remotas con sshfs

Como montar carpetas o particiones remotas ssh como unidades locales en Linux

Si estás pensando en montar una carpeta remota SSH como unidad local en linux, ya sea por realizar backups o trabajar directamente con los archivos de un equipo remoto, vamos a ver paso a paso como hacerlo en CentOS y Debian.

Vamos a usar un par de utilidades que podemos encontrar directamente en los repositorios, y que nos permitirán montar cualquier carpeta a la que tengamos acceso por ssh como si fuese local. Los pasos son bastante sencillo y una vez las tengamos montadas podremos trabajar sobre ellas tanto desde la interfaz gráfica como por la consola de comandos.

Esto nos puede venir ideal para por ejemplo hacer backups con megatools si estamos usando una distribución que no soporta ese software, o si estamos pensando en tener virtualización con varias máquinas y tener una dedicada exclusivamente a realizar las copias de seguridad.

Cómo instalar sshf y fuse en Debian Jessie y CentOS 7

Como he comentado, al realizarse la instalación mediante los repositorios va a ser realmente sencillo, ya que solo tendrás que ejecutar un par de comandos dependiendo de la distribución que uses. Ten en cuenta que te vale para cualquier otra versión también.

Debian Jessie
apt-get install sshfs

CentOS 7
yum install fuse sshfs

Una vez instalado simplemente cargas el módulo de fuse

modprobe fuse

Una vez lo tengas puedes asegurarte de que están los módulos cargados ejecutando un lsmod

lsmod | grep fuse


salida:
root@server1:~# lsmod | grep fuse
fuse                    5065  1
root@server1:~#

Cómo montar carpetas remotas con sshfs en CentOS y Debian

Una vez instalado y estando seguro de que lo tienes funcionando vas a crear una carpeta por ejemplo /var/remoto y a  partir de ahí vas a montar la carpeta ssh en ella. En algunos casos es necesario meter el usuario root en el grupo fuse, así que lo vamos a ver también para que no tengas problemas más adelante.

Léete también  Como crear links simbólicos en linux

Empezaré por añadir root (que es el que vamos a usar) al grupo fuse

adduser root fuse

Ahora que ya lo tienes toca crear la carpeta que usaremos para montar la unidad remota

mkdir /var/remoto

En este punto tienes que pensar si quieres utilizar el acceso con contraseña, o si prefieres conectar sshfs con claves públicas y privadas. Si tienes las claves creadas, simplemente pones la pública en el servidor remoto y conectas, sino le indicas la contraseña cuando te la pregunte.

sshfs [email protected]:/var/ruta/remota /var/remoto

La primera ruta es la del equipo remoto, y la segunda la carpeta que hemos creado donde la vamos a montar.

En este momento si miras el contenido de la carpeta que habías creado ls -l /var/remoto, verás que están los archivos correspondientes de la carpeta del equipo al que te conectas por ssh.

Cada vez que reinicies te va a tocar volver a hacerlo, a no ser que lo incluyas entre los comandos de arranque para que se conecte cada vez que lo inicies.

Cómo desmontar carpetas remotas montadas con sshfs

Bueno, tienes la carpeta montada, pero ¿Qué pasa si solo la quieres tener activa para realizar unas acciones y luego prefieres que no esté disponible por si por error modificas algo? No te preocupes por que lo vamos a solucionar con un solo comando.

Para desmontar tanto esta como cualquier otra unidad que tengas montada (incluso las USB, etc), bastará con que ejecutes contra la carpeta el comando umount.

umount -l /var/remoto

A partir de aquí podrás seguir utilizando la carpeta que habías montado como cualquier otra, pero recuerda que para montar una carpeta como unidad remota lo más recomendable es que esté vacía.

Léete también  Permitir conexiones remotas al servidor mysql [Solucionado]

¿Tienes conectada alguna carpeta remota? ¿Para qué la usas?

 

 


AYUDANOS a poder seguir dando respuestas. Te podemos echar una mano y tú también a nosotros, símplemente dale a me gusta.