ftpfs (ftp to filesystem)

Hay veces que por algún motivo puede ser estrictamente necesario poder montar un directorio ftp como un sistema de archivos. Por ejemplo, se me está ocurriendo, si es necesario realizar un rsync sobre los datos para poder subir sólo aquellos que se han actualizado.
Un cliente ftp normal, como puede ser por ejemplo FileZilla no es capaz de saber qué cosas subir y cuales no, ya que no detecta si hay cambios entre el fichero remoto y el fichero local. En estos cosas, poder montar un sistema de ficheros ftp como una carpeta local, puede ser de gran utilidad.
Para poder por lo tanto conseguir hacerlo, uniremos la potencia del cURL con la gran versatilidad de FUSE y así lograremos el objetivo. Para hacerlo de una forma sencilla existe el programa curlftpfs, que hace justamente lo descrito. Está disponible en los repositorios oficiales de Debian, así que a tirar de apt!
Una vez esté instalado, simplemente necesitamos montar sistema de ficheros en una carpeta local. Para ello indicamos el usuario y la contrasela, así como el ftp remoto al que nos vamos a conectar y finalmente, el punto de montaje local.
shell> curlftpfs -o user="user:passwd" ftp.empresa.com /mnt/ftp/
Ahora bajo la carpeta /mnt/ftp tenemos el ftp de la empresa. Algo realmente sorprendente. Eso sí, la velocidad de acceso es ftp y si ponemos el programa curlftpfs en modo debug, vemos exactamente qué es lo que está realizando. En este caso, autenticaciones ftp para cada fichero. No es óptimo ni veloz, pero sirve para el propósito.
shell> mount
...
curlftpfs#ftp://ftp.empresa.com/ on /mnt/ftp type fuse (rw,nosuid,nodev)
En caso de que el servidor ftp remoto emplee un protocolo cifrado, sftp, la forma simple de conectarse es la siguiente, con las opciones de certificados.
shell> curlftpfs -o ssl -o ssl_control -o no_verify_hostname \
       -o user="user:passwd" ftp.empresa.com /mnt/ftp/



No hay comentarios :

Publicar un comentario

Formulario de contacto

Nombre

Correo electrónico *

Mensaje *

Últimos comentarios