Backup delle fotografie - lftp

Pubblicato da Maurizio il 11/08/2018
Aggiornato il 02/01/2023
Tempo di lettura, circa 5 minuti

blog

Hai la passione delle fotografie

e ne hai salvate a centinaia (se non a migliaia) sul tuo disco rigido.

Fai dei backup regolari?

Sei sicuro di essere al riparo da eventuali problemi del disco o, molto banalmente, da una cancellazione involontaria?

Dovresti salvare con una certa regolarità tutti i tuoi files più o meno importanti (non solo le tue fotografie) ma mi accorgo sempre più che sono veramente poche le persone che lo fanno.

Perchè?

Devo ammettere che anche a me non è mai successo nulla… non mi si è mai rotto un disco rigido… non ho mai preso un virus distruttivo… qualche volta ho cancellato un file per errore ma quasi sempre sono riuscito a recuperarlo.

Il backup e gli estintori

All’inizio della mia carriera lavorativa vendevo valvole per estintori.

Per questo motivo ero (ovviamente) in contatto con decine e decine di costruttori di estintori.

Quelli seri producevano degli apparati piuttosto cari, quelli meno seri degli apparati più economici e gli altri… sì, c’erano anche gli altri…

Se ci pensate bene, però, l’estintore può rimanere appeso al muro per una vita (fate i controlli regolarmente!) e quindi potrebbe sembrare uno spreco di denaro ma - in caso di bisogno - potrebbe essere la linea di demarcazione tra un problema e una tragedia.

Quindi, avere un estintore carico e controllato a portata di mano è una bella sicurezza!

Il nostro estintore

Noi non andremo ad indagare quale software di backup utilizzare e quale metodo seguire. Ognuno di noi è libero.

Voglio darvi uno spunto diverso. Andremo a creare un archivio di immagini parallelo a quello che utilizziamo tutti i giorni.

Perchè questo?

Perchè potete crearlo su un disco esterno e rendere fruibile le immagini ad altri in casa vostra anche quando il vostro PC è spento oppure perchè potreste voler condividere questo disco esterno via ftp o attraverso un media server.

Inoltre la clonazione del vostro archivio di immagini può essere tranquillamente sfogliata in caso di necessità (ad es. file cancellato o corrotto) in modo molto semplice senza dover passare attraverso l’interfaccia del programma di backup. L’unico neo sarà i fatto che i vostri files occuperanno molto più spazio perchè non saranno compressi come in un file di backup tradizionale.

Iniziamo!

Nel momento in cui scrivo sto utilizzando un disco rigido Western Digital con alimentazione esterna da 2 TB collegato via USB ad un Router ASUS DSL-N55U

Prima di tutto dobbiamo installare un piccolo software che useremo a questo scopo. Si chiama lftp ed è un sistema a linea di comando molto sofisticato per trasferire dei files attraverso la rete.

Per installarlo utilizzate il tool della vostra distribuzione oppure la linea di comando. Come preferite.

Ora andiamo a comporre il comando vero e proprio che, per comodità, suddivideremo in due files separati.

Creiamo un nuovo file di testo che conterrà i comandi veri e propri.

lftp funziona in modo interattivo ma noi lo vogliamo inserire in uno script per la shell da lanciare a nostro piacimento. Quindi istruiremo lo script affinchè vada a leggere sequenzialmente i comandi all’interno di un file. In questo modo sarà anche più semplice fare manutenzione (ad es. aggiungere o togliere una cartella) perchè non dovremo andare a toccare il nostro programma.

Si presume che abbiate un disco condiviso via ftp con un utente e password già creati e funzionanti!

Lo script

All’interno del file appena generato (chiamiamolo <comandi_lftp>) andiamo ad inserire questa sequenza:

open -u nome_utente,password indirizzo_ip_disco

Quindi se l’utente si chiama Pippo e la password è Pluto e il nostro disco è stato condiviso sulla rete con l’indirizzo IP 192.168.12.54 il comando sarà

open -u Pippo,Pluto 192.168.12.54

Dal momento che il file comandi_lftp contiene in chiaro il nome dell’utente e la sua password non vi devo ricordare che dovrà risiedere nella vostra cartella personale ed avere adeguati diritti di lettura e di scrittura che lo mettano al riparo dagli estranei, vero?!

Con questo comando indichiamo a lftp di aprire una connessione con il nostro disco rigido condiviso utilizzando un particolare utente.

Fatto questo dovremo solo indicare, in sequenza, i comandi per replicare l’archivio di files in questo modo:

mirror -Rnev cartella_origine cartella destinazione

Anche in questo caso è tutto abbastanza semplice ma analizziamo il comando un pezzo alla volta:

  • mirror - indica a lftp di fare un mirror ovvero una copia tale-quale della cartella di origine
  • -R - indica a lftp di analizzare la cartella di origine includendo le sotto-cartelle
  • -n - trasferisci solamente i files modificati DOPO quelli in archivio [1]
  • -e - obbliga lftp a CANCELLARE nella cartella di destinazione i files che non trova nella cartella di origine. Io la utilizzo perchè voglio che le mie cartelle siano esattamente uguali: se decido di eliminare un file voglio che lo stesso file venga cancellato anche dall’archivio.
  • -v - stampa sullo schermo l’output del comando perciò vi dirà esattamente che cosa sta facendo. Utile sia se si vuole lanciare il comando interattivamente dalla shell oppure se si vuole reindirizzare l’output su di un file di log

Il vostro file comandi_lftp potrebbe contenere diverse linee come quella qui sopra se avete diverse cartelle da sincronizzare. Ad esempio:

mirror -Rnev /immagini/vacanze /disco1/vacanze
mirror -Rnev /documenti/casa /disco1/documenti
mirror -Rnev /video /disco1/video

al termine di tutte le istruzioni di sincronizzazione dovrete indicare a lftp che l’operazione è terminata e che si deve disconnettere dal disco remoto con un semplice comando

exit

Questo è tutto!

Il comando da lanciare quindi sarà

lftp -f comandi_lftp

Infatti l’opzione -f indica a lftp di leggere i comandi da un file (f = file) e non di aspettarli interattivamente da un input della tastiera.

Attenzione

Ancora una volta vi invito a prestare attenzione all’opzione -e ovvero quella che CANCELLA i files non presenti nella cartella di origine in quella di destinazione.

Fate delle prove prima di usare il comando per sincronizzare i vostri archivi perchè potreste pagare molto caro un eventuale errore!

Pensate, ad esempio, se doveste confondere la cartella di origine con quella di destinazione e invertirle. Perdereste tutto!!

NOTE

[1]Potreste avere problemi con l’aggiornamento dei soli nuovi files nel caso in cui il server FTP avesse difficoltà a fornirvi la giusta data (diversi router casalinghi potrebbero avere questo problema). In questo caso aggiungete l’opzione —ignore-time così da considerare solamente la data del fiel e non l’orario.

etichette: gestione delle foto



Vuoi essere il primo a lasciare un commento? Ne sarei felice!

Richiesto
Richiesto
Opzionale
Richiesto