FTP por línea de comandos avanzado LFTP

  • Por
Un programa para Linux que nos permite hacer FTP por línea de comandos más potente que el tradicional, como copiar directorios enteros (hacer un mirror).
Posiblemente ya sepamos que para hacer FTP, aparte de usar alguno de los programas como Filezilla o Cute FTP, podemos utilizar la línea de comandos. La línea de comandos la tiene por lo general cualquier sistema operativo y resulta un poco más complicada de trabajar que las ventanas, pero a veces no hay otra cosa. Por ejemplo, es muy posible que intentes hacer FTP en un servidor al que accedes por telnet y sólo tienes la línea de comandos para trabajar.

El problema de la línea de comandos es que no permite realizar algunas acciones útiles, como una subir o bajar un directorio entero, con todos sus subdirectorios y sus contenidos. Es algo así como una opción de get o put que sea recursivo y que se encargue de recorrer todos los directorios bajando los datos que contengan.

El comando que vamos a ver se llama LFTP y sirve para realizar un FTP más avanzado. En concreto muy útil cuando se desea hacer un mirror de todo un sitio web para descargarlo o subirlo.

El comando lftp en realidad es un programa que suele venir instalado en todos los Linux, así que lo más seguro es que lo tengamos instalado en nuestro servidor.

Para obtener ayuda con lftp basta con escribir:

lftp -help

Esto nos ofrecerá datos sobre las diferentes opciones del programa. Para conectarnos con un servidor de FTP escribiríamos esto:

lftp -u usuario,clave ftp.dominio.com

Una vez dentro de lftp, lo que estamos viendo es el servidor remoto. Apareceremos en el directorio raíz del servicio de FTP. Nos aparecerá un prompt como este, donde indica el usuario y el servidor al que estamos conectados:

lftp usuario@ftp.dominio.com:~>

Podemos hacer un ls -l para saber la información del directorio.

lftp usuario@ftp.dominio.com:~> ls -l

También podemos obtener ayuda con el comando help:

lftp usuario@ftp.dominio.com:~> help

Esto nos dará una lista de los comandos disponibles en lftp. Entre ellos, tenemos el comando mirror, que vamos a comentar a continuación. Si queremos obtener ayuda de un comando en concreto, podemos escribir help, seguido del comando que queremos conocer.

lftp usuario@ftp.dominio.com:~> help mirror

Esto nos dará la manera de usar y las opciones del comando que nos interesaba. En concreto, para hacer un mirror se tiene que decir el directorio local donde deseas copiar y el directorio remoto que quieres copiar dentro del local.

Para usar el comando mirror debemos escribir primero el directorio local que queremos copiar y luego el directorio de remoto donde lo deseamos copiar.

mirror local remoto

Hay que tener en cuenta que cuando estamos dentro de ftp, el ordenador local es el ordenador al que estás conectado por lftp y el remoto es el que te conectaste originariamente por telnet. Veamos otro ejemplo de sentencia:

Mirror docs html

Estamos diciendo que copie el directorio que se llama docs del servidor al que estás conectado por FTP, al directorio html del servidor sobre el que estabas haciendo telnet. Si el directorio html no existía, lo crea.

mirror . .

Si ponemos esto (los dos directorios .) estamos diciendo que lo copie todo de local a remoto.

Autor

Miguel Angel Alvarez

Miguel es fundador de DesarrolloWeb.com y la plataforma de formación online EscuelaIT. Comenzó en el mundo del desarrollo web en el año 1997, transformando su hobby en su trabajo.

Compartir

Comentarios

antoni serra

13/10/2008
Excelente tutorial de lftp. En el siguiente enlace se puede encontrar un completo manual de uso de lftp, en español: http://www.rpublica.net/?page_id=16

wulag

25/8/2009
commando ftp lftp mirror
hola mi estimado, puedes colocar ejemplos del manejo del mirror, se que es elemental, pero si haces lo que te pido se entendera aun mas, gracias