Sincronizzazione mediante `lftp`

Total
0
Shares

Questa è stata una settimana molto, molto dura… ma non posso certo permettere che si concluda senza avere messo online almeno una piccola, miserabile, insignificante tip! Quindi, per fare le cose al volo, vi dico come effettuo la sincronizzazione di un sito Internet che ho elaborato in locale con la copia che è pubblicata nella directory di un certo spazio FTP.

Premetto che questo non è il modo in cui lavoro normalmente: da buon figlio degli anni ’70 io modifico il codice direttamente online, non in produzione, ma online (bash). Questa settimana mi è capitato però di dover mettere mano al sito Internet di un cliente che ha messo a mia disposizione solo ed esclusivamente il suo account FTP. Quindi ho cominciato a sviluppare una copia locale del suo sito internet e tengo sincronizzata la versione online con un solo, semplice, meraviglioso comando:

lftp -u 'username,password' ftp.mydomain.com -e "set ftp:ssl-protect-data true;mirror --reverse /home/ivan/test test; exit;"

In altre parole:

  • username: il nome utente dell’account FTP
  • password: la password associata al nome utente dell’account FTP
  • ftp.mydomain.com: la host dell’account FTP
  • /home/ivan/test: la cartella locale (senza slash finale)
  • test: la cartella remota (ovvero quella dove si trova pubblicato il sito Internet)

Da notare l’opzione “set ftp:ssl-protect-data true” che protegge l’autenticazione FTP mediante ssl e l’opzione “mirror –reverse” che permette di sincronizzare in upload anziché in download.

Inutile dire che con lo stesso comando si può mantenere un backup remoto di una directory locale, anche se per cose di questo tipo è consigliabile l’utilizzo di rsync che fa tutto attraverso una connessione ssh.

Niente di più, niente di meno. Buon week end!

4 Commenti
  1. Sono arrivato per caso sulle pagine del tuo blog più o meno un mese fa. Alcuni dei tuoi post denotano una conoscenza approfondita di Debian GNU/Linux. Ti posso sottoporre i problemi di cui soffre la nostra infrastruttura ed avere un preventivo per la loro risoluzione? Contattami. Ciao.

  2. Per favore, compila il form che trovi nella pagina “Contattami”. Per quanto riguarda l’analisi e la risoluzione dei problemi a cui fai riferimento: nessun problema, è il mio lavoro 😉

    Buona giornata!

  3. ho provato il comando indicato in questo post e non ha funzionato.

    ecco la versione con la quale sono riuscito a fare 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’

  4. Grazie per la precisazione Stefano! Non so cosa non vada nel comando che ho riportato sopra, ma forse si tratta solo di un errore di digitazione: vedo infatti che l’argomento di -u si apre con un apice semplice e si chiude – orrore! – con un apostrofo…

    …lo correggo subito 😉

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Ti potrebbe interessare anche

Disabilitare il reverse lookup su ProFTPD

Lo scrivo qui a titolo di promemoria per la prossima volta che dovesse succedermi… Questa mattina ho messo a disposizione di un collega un nuovo accesso FTP ad uno dei…

Impostare l'ora di sistema e la hwclock

Mi capita spesso di accedere ad un server Linux (altrui) e di scoprire che l’ora di sistema è completamente sbagliata. Rimettere a posto le cose è semplice, se non ci…