linuxscripting

LFTP: Mirroring Professionale di Directory FTP

2 min di lettura
LFTP: Mirroring Professionale di Directory FTP

Il mirroring di un sito o di una directory remota tramite FTP può essere complicato con i client standard. LFTP è un’utility da riga di comando estremamente potente che supporta protocolli come FTP, HTTP, SFTP e molti altri, permettendo sincronizzazioni veloci e affidabili.


1. Installazione di LFTP

Su distribuzioni basate su Debian/Ubuntu, l’installazione è immediata:

sudo apt-get update
sudo apt-get install lftp -y

2. Lo Script di Mirroring

Ecco un esempio di script per sincronizzare una cartella remota con una locale. LFTP permette di passare tutti i comandi in una singola riga o tramite script:

#!/bin/bash
lftp -c "
open ftp://utente:password@host-remoto.it;
mirror --reverse --only-newer --verbose /cartella/locale /cartella/remota;
quit
"
ℹ️
**Parametri Principali:** * `--reverse`: Esegue l'upload (da locale a remoto). Rimuovilo per il download. * `--only-newer`: Scarica/carica solo i file che hanno una data di modifica più recente. * `--verbose`: Mostra i dettagli dell'operazione in corso.

3. Gestione della Sicurezza (SSL/TLS)

LFTP gestisce nativamente le connessioni sicure. Se il server richiede FTPS, LFTP proverà a negoziare la connessione automaticamente.

Se riscontri problemi con i certificati, puoi forzare i parametri:

set ftp:ssl-allow true;
set ssl:verify-certificate no; # Usa solo se il certificato è self-signed

4. Perché usare LFTP invece di wget o curl?

A differenza di altri strumenti, LFTP è multi-threaded (può scaricare più file contemporaneamente) e gestisce molto meglio le interruzioni di connessione, riprendendo esattamente da dove si era interrotto.

💡
**Consiglio:** Se devi pianificare un backup regolare, inserisci lo script nel `crontab` del tuo server per automatizzare il mirroring notturno.