← Tutti i progetti
Completato agosto 2026

FTPRemoteSync

Un backup incrementale su Raspberry Pi che, ogni notte, scarica da un NAS remoto (esposto via FTP) solo i file cambiati e li archivia su un NAS locale.

BashRaspberry PilftpBackupSelf-hosted

L’obiettivo

Tenere una copia di sicurezza dei dati di un NAS che si trova in un’altra sede, salvandoli automaticamente su un NAS locale. L’idea è avere un backup off-site senza intervento manuale, trasferendo ogni volta soltanto ciò che è effettivamente cambiato.

Come funziona

Un piccolo Raspberry Pi fa da tramite fra i due NAS:

  1. Monta il NAS locale (via CIFS/SMB o NFS) come una cartella di sistema.
  2. Si collega al NAS remoto via FTP e, con lftp mirror, scarica solo i file nuovi o modificati dall’ultima esecuzione (--only-newer), in parallelo.
  3. Gira ogni notte via cron e scrive un log per ogni esecuzione, con rotazione automatica.

Il NAS remoto si trova dietro una connessione domestica senza IP pubblico raggiungibile: le due sedi sono collegate da una VPN site-to-site privata, così il Pi può raggiungerlo come se fosse in rete locale.

Configurazione

Tutto il comportamento vive in un unico file JSON: l’elenco delle cartelle da copiare (ogni voce mappa un percorso remoto su uno locale), il numero di trasferimenti in parallelo e i giorni di conservazione dei log. Le credenziali di NAS e FTP stanno in file separati, leggibili solo da root (permessi 600), fuori dalla configurazione.

Scelte di progetto

Stack

Raspberry Pi · Bash · lftp · cron · CIFS/NFS · logrotate · jq