Ciao a tutti,
Faccio un ingresso a "gamba tesa" nella discussione indicandovi come ho risolto questo problema una decina di anni fa, tutt'ora lo trovo il metodo più efficace e rapido per poter recuperare i file persi.
Ho 5 FileServer con SME tutti con Hdd da 3 Tb Raid1, dopo varie prove di Sw ho deciso di utilizzare gli hard-link del comando Rsync, questo mi permette di avere sul dispositivo di backup la ricostruzione delle directory esattamente uguale a quella orginale e la possibilita di accedere al singolo file in una determinata data.
In pratica ho in linea circa 5 mesi di backup occupando uno spazio che è di poco superiore al 8-10% del backup totale.
Lo script l'ho trovato su internet, non ricordo nemmeno piu dove, una volta generati i certificati e importate le chiavi il tutto funziona alla grande, mi sono tolto di mezzo vari SW, compressioni ed altro, alla fine lo script invia una mail ad un determinato indirizzo con l'elenco specifico dei file salvati, ho inserito anche l'indicazione dello stato del raid, anche se l'SME invia gia di suo una mail ad admin in caso di problemi.
Di seguito quello che ho su una delle mie macchine, questa è quella che vine "conservata" meno, solo 60 gg
Sotto root è salvato lo script, in cron.d impostate i valori dell'esecuzione
#!/bin/bash
#creazione di un file per l'echo di rsync
date >/tmp/rsync.log
#Visualizzazione dello stato occupazione disco
df -h >> /tmp/rsync.log
#Visualizzazione dello stato del Raid1
cat /proc/mdstat >> /tmp/rsync.log
#FileServer Backup Script
#Data di oggi nel formato ISO-8601:
DAY0=`date -I`
#Data di ieri nel formato ISO-8601:
DAY1=`date -I -d "1 day ago"`
#Directory sorgente:
SRC="/home/e-smith/files"
#Directory destinazione:
TRG="root@x.x.x.x:/home/e-smith/files/ibays/backup/$DAY0"
#Link della directory di destinazione:
LNK="/home/e-smith/files/ibays/backup/$DAY1"
#Opzioni per rsync:
OPT="-avh --delete --link-dest=$LNK"
#Esecuzione del backup
rsync $OPT $SRC $TRG >> /tmp/rsync.log
date >> /tmp/rsync.log
#invio mail ad admin dell'attivita
cat /tmp/rsync.log | mail -s "backup FileServer" admin@miodominio.it
Nel disco destinazione (per me un altro SME...) troverete nella directory una serie di cartelle nominate in base alla data del backup, risulta quindi facilissimo scegliere il giorno a cui si vuole risalire, la struttura rispetta quella di SME
Se volete alla fine aggiungete un piccolo codice per cancellare i backup piu vecchi di "x" giorni
Sinora l'unico neo di questa procedura l'ho riscontrato quando per un motivo x non si riesce a contattare la destinazione remota, viene creata una cartella sullo stesso disco origine e viene eseguito il backup con grosso rischio di riempire il disco. Se il disco non si riempie e viene ripristinato il collegamento con la destinazione il giorno successivo, avremmo il problema che verrà effettutato il backup integrale, anche questo pero è possibile evitarlo con una piccola regola nel controllo del backup precedente. Sinora comunque e mai avuti questi problemi.
Ciao