Avendo la necessità di eseguire il backup di un sito ftp ho fatto un po di ricerche e ho scoperto che con lftp è possibile eseguire la copia ricorsiva dei dati presenti sul sito prelevando soltanto i file/directory variati dal ultimo backup.
Basterà impartire il comando
lftp -f commandfiledove commandfile sarà un file contenente i comandi che lftp dovrà eseguire, che potranno essere i seguenti:
open -u user,password sito_ftp/path/da/backuppare mirror --verbose quit
Con open indichiamo l’utente e password (separati dalla virgola) utilizzati per collegarsi a sito_ftp dove sarà possibile indicare anche il path iniziale.
Il comando mirror invece permette di lanciare il backup che per default viene eseguito da remoto a locale, ma con l’opzione -R sarà possibile fare anche il contrario. mirror possiede molti parametri di cui rimando alla man page per approfondimenti.
Con quit invece usciremo dalla sessione ftp.
Se tutto va bene una volta eseguito il comando come sopra indicato ci ritroveremo nella directory corrente il mirror del nostro sito ftp.
Aggiornamento del 07/03/2009:
Come potete vedere nei commenti ringrazio Stefano Spinucci per per questa nova indicazine di utilizzo:
in allegato posto una versione del comando che fa il mirror in upload da una directory locale senza usare un file esterno per i comandi, ma contenendo in un’unica riga tutto quello che serve per l’upload
lftp -c ‘open -u username,password ftp://sitoftp.net/;set ftp:ssl-protect-data true;mirror –reverse /directory/sorgente directory_destinazione_sul_server; exit’

Grazie, ottimo, non conoscevo questo comando, ora i miei backup risulteranno più facili.
[…] A questo punto possiamo procedere con l’aggiornamento, naturalmente prima è d’obbligo esetuire un backup del database e dei file. Per il db uso il plugin WordPress Database Backup, in vece per i files utilizzo il metodo descritto nel post Backup di siti ftp con lftp. […]
[…] lftp -f commandfile dove commandfile sarà un file contenente i comandi che […] Vai alla Fonte […]
in allegato posto una versione del comando che fa il mirror in upload da una directory locale senza usare un file esterno per i comandi, ma contenendo in un’unica riga tutto quello che serve per l’upload
lftp -c ‘open -u username,password ftp://sitoftp.net/;set ftp:ssl-protect-data true;mirror –reverse /directory/sorgente directory_destinazione_sul_server; exit’
[…] abitualmente lftp, come ho descritto in Backup di siti ftp con lftp, per eseguire il backup giornaliero di alcuni miei […]