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 commandfile
dove 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 […]