gFTP? no!!! LFTP…

Desde ayer a la mañana que intento e intento e intento (e intento) guardar una copia de respaldo de los archivos alojados en el server donde está La Consola, periódicamente lo hago con Filezilla ya que es un gestor gráfico que no me resulta malo, he probado gFTP pero no me llegó a gustar y antes usaba un programa desde consola (no recuerdo el nombre ahora) que me resultaba un poco incómodo ya que debía recordar toda una línea de comando, a tal punto, que llegué a invocarla desde mi directorio personal desde un archivo de texto.

Pues bien, cuando hay algunas cosas que no marchan bien en la conexión Filezilla a veces se cierra o cierra la misma conexión lo cual se torna un poco molesto. Mas cuando dice que ha transferido todos los archivos y miras en la carpeta en tu home y pesa 25 megas y si te fijas en el servidor llega a los 27!.

Buscando me encuentro con algo mas que interesante que no sé como se me pasó de largo ya que de haberlo conocido hace tiempo, ni me molestaba en instalar ni un software adicional.

El galardonado en cuestión es Lftp, un programa para transferencias en protocolo FTP, HTTP, FISH, SFTP, HTTPS, FTPS y SSH, soporta Marcadores y transferencias en paralelo, permite usar IPv6 y otros protocolos mas como ftp proxy, http proxy, ftp sobr http, opie/skey, transferencias fxp y socks. Completito no? Lee la descripción completa aquí (en inglés)

Lo bueno de este monstruo es que cada error que no sea fatal se vuelve a tratar de completar, permite usar marcadores, alias, scripts, programar eventos y si la transferencia se corta, empieza desde donde quedo aún si el servidor donde estemos trabajando no soporta el comando REST o si cerramos la terminal actúa en segundo plano. También nos da la posibilidad de ejecutar comandos encadenados en paralelo (&), agrupar comandos (con los paréntesis: () ) y ejecutar dependiendo de comandos anteriores (&&, ||).

Para entender mejor esto último copio el ejemplo de la página web del mismo programa:

lftp> cat file | gzip > file.gz
lftp> get file &
lftp> (cd /path && get file) &

Ahora vamos a lo práctico:

Si queremos conectarnos como usuarios anónimos en un servidor usamos el comando:

$ lftp dominio.com

Ahora, si tenemos usuario y contraseña:

$ lftp -u usuario dominio.com

Al dar Intro pedirá la contraseña.

una alternativa, si queremos introducir contraseña (visible en consola) desde el principio, usaremos la sintaxis:

$ lftp -u usuario,contraseña dominio.com

Hecha la conexión debemos aprender a navegar por los archivos y carpetas:

Listamos el contenido del directorio para saber donde estamos parados con ls

Para navegar por los directorios en el servidor usaremos

cd nombredeldirectorio

Y en nuestra computadora deberemos usar el mismo pero anteponiendo la letra l (local):

lcd nombredeldirectorio

para retroceder en los directorios usamos (dependiendo de lo anterior)

cd -

o

lcd -

Si queremos subir un archivo:

mput nombredelarchivo

Si queremos subir todo el contenido de la carpeta:

mput *

Para bajar se usa el comando mget

mget nombredelarchivo

todos los archivos en la carpeta:

mget *

Ahora, si quiero modificar el directorio donde guardará los archivos (por defecto en home), uso el modificador -O

mget -O rutadondeseguardara archivoabajar

Si lo que quiero es bajar el directorio completo, incluída la carpeta:

mirror -v nombredelacarpeta

Subir un directorio al servidor:

mirror -R nombredelacarpeta

Usando Marcadores:

Supongamos que tengo muchos directorios (como es común en un servidor), para ser más específico lo que voy a hacer es suponer (imaginariamente) tener (sólo) dentro 3 directorios llamados: plugins, temas y colores dentro de la carpeta raíz del servidor sin ningún archivo más, listo el directorio raíz y me salen las 3 carpetas:

lftp usuario@servidor:/dominio.com> ls
drwxr-xr-x 7 usuario pg1483523 8192 Nov 23 11:32 plugins
drwxr-xr-x 7 usuario pg1483523 8192 Nov 23 11:32 colores
drwxr-xr-x 7 usuario pg1483523 8192 Nov 23 11:32 temas

Me dirijo dentro de la carpeta temas

lftp usuario@servidor:/dominio.com> cd temas/

lftp usuario@servidor:/dominio.com/temas>

Agrego el marcador:

lftp usuario@servidor:/dominio.com/temas> bookmark add temas

listo, con eso establecimos un marcador que lleva directo a ese directorio

Ahora, si quiero saber cuales son los marcadores que tengo modifico el comando por bookmark list, lo que me devuelve el nombre del marcador con la ruta asignada.

Como me sirve esto?, me simplifica la navegación en el servidor, si yo quiero conectarme al directorio específico, basta con poner en la terminal:

lftp marcador

o, si debo agregar usuario y contraseña:

lftp -u usuario,contraseña marcador

Si quiero ver o editar (con vi) desde la consola el archivo de marcadores uso la siguiente sintaxis:

lftp -c bookmark list|edit (o list, o bien edit)

Si bien esto es una somera “punta del iceberg” pueden interiorizarse mas con el uso de este sencillo pero poderoso programa en la página del autor. A mi me ha gustado muchisimo, como habrán observado tras dos días de usarlo xD!

Completa esta lectura con:

Si te gustó este post, por favor considera dejar un comentario o suscribirte al feed y obtener artículos futuros en tu lector de feeds.

Comentarios (8)

No sería útil crear una GUI para LFTP?

Si la creas, seguro trae mas problemas que soluciones. Creo que asi esta bien, es simple y efectivo…

"Si la creas, seguro trae mas problemas que soluciones."

Claro hombre. En ese caso espero que tampoco uses un navegador gráfico, ni un gestor de archivos gráfico, de hecho espero que tampooc uses un escritorio. Todo por consola. ¡Abajo las GUI!

Un GUI no son más que objetos que hacen las llamadas de consola pertinentes. Decir que eso trae mas problemas que soluciones es una tontería, todo depende de cómo esté implementado el GUI.

En cuanto a lftp lo veo bien, pero es para lo que es, y es para usarlo en ordenadores que no tienen las X. No soy un anticonsola, pero hay ciertas cosas que se hacen mucho mejor y más rápido gráficamente que por consola y esta es una de ellas. Se gestiona mucho mejor un ftp gráficamente que por consola.

Me quedo con gftp.

Opino lo mismo. Me parece muy bueno para automatizar envios y recepciones de archivos o copias de seguridad etc… pero para uso diario una gui es imprescindible. De todas formas gracias por la infomacion.  Puede resultar util en ciertas ocasiones.

@Jesp: no seas tan extremista, me refería a que no siento necesario un GUI para algo hecho tan simple, específicamente a ESTE programa y no a todo el software que existe en este mundo.

Tampoco digo que gFTP por tener un GUI es malo.

Y no estoy de acuerdo contigo en que gráficamente gestionas mejor una conexión FTP que por consola, al menos las veces que uso lo gráfico (en este caso, no sea que tomes en extremo mis palabras nuevamente y digas que ya no use mi celular a menos que lo haga via telnet xD!) para archivos o movimiento de datos pequeños si funciona, pero cuando quieres subir o bajar grandes cantidades (como TODO lo que tienes en el server, para hacer un backup por ejemplo) se generan muchos problemas volviendo engorrosa la tarea.

Y el título del post (imaginando tu extremismo casi ABSOLUTO lo habrás TOMADO MAL) debes interpretarlo asi: "gFTP? no, este se llama LFTP"

Peace.-

@lorddeus: bien, interpretaste lo que quise decir hace unos segundos en este mismo mensaje.
Saludos!

Tal vez sin GUI es más "fiable".

Hay momentos q usar un cliente gráfico es muy bueno.
Es más lindo, más amigable.
Pero hay q tener un resguardo para cuando la interfaz gráfica no funcione.
Y como dijeron antes para realizar tareas automatizadas.
Tb hay personas q se sienten mas comodas con una aplicación de consola.

Saludos
Matias

Yo tengo un sitio web cuyo mantenimiento lo hago con gFTP o lftp sobre Ubuntu 7.10, este ultimo para hacer por ejemplo algún mrm (borrado masivo). Y me he encontrado con un problema, y es que en el directorio en el que suelo hacer el borrado masivo, me ha aparecido un fichero de nombre .dbname.php que en resumen, lo que hace es llamar a un comando pasado como parámetro en la URL.
Al conocer yo sólo la contraseña de FTP y al ser exactamente en el directorio en el que hago el borrado masivo me hace sospechar de lftp, que tenga, en el más optimista de los casos, algún problema de seguridad que permita a atacantes obtener la contraseña.
Si alguien ha oido algo de algún problema de seguridad, o malware sobre lftp (o gFTP) le agradecería que me lo hiciera saber.
 
 
 
 

Deja un comentario

(requerido)

(requerido)