Si dovrebbe chiamare questo backup differenziale inverso e come raggiungerlo?

4

Realizzo molti backup. Lo faccio su diversi dischi, che sono memorizzati in luoghi diversi. Sto cercando un tipo di backup, ma non riesco a trovare il suo nome (di cui ho bisogno per capire se rsync o un altro strumento di Ubuntu può aiutarmi con esso).

Ecco cosa sto cercando di ottenere.

  • Conserva sempre una copia identica dello stato corrente della cartella home (in altre parole, il backup e la cartella home sono identici dopo ogni backup)
  • In ogni backup, ogni file che viene modificato o eliminato nella cartella principale viene rimosso dal backup e archiviato in una cartella che contiene tutti i file modificati e cancellati nel giorno specifico del backup.

Ad esempio,

Giorno 1

/home/joey/1.txt
/home/joey/2.txt
/home/joey/3.txt

Backup regolare della vecchia scuola:

/media/backup/joey/1.txt
/media/backup/joey/2.txt
/media/backup/joey/3.txt

Giorno 2

/home/joey/1.txt
/home/joey/3.txt
# D /home/joey/2.txt is deleted

Esegui il backup con una copia esatta di joey, ma con una nuova cartella diff:

/media/backup/joey/1.txt
/media/backup/joey/3.txt
/media/backup/day2-diff/joey/2.txt

Giorno 3

/home/joey/1.txt
/home/joey/3.txt # A /home/joey/3.txt was changed
/home/joey/4.txt

Esegui il backup con ancora una copia esatta di joey e con una cartella diff per un file modificato:

/media/backup/joey/1.txt
/media/backup/joey/3.txt # the new version
/media/backup/joey/4.txt
/media/backup/day2-diff/joey/2.txt
/media/backup/day3-diff/joey/3.txt # the old version of the backup is copied here

La logica è la seguente: attualmente ho così tanti backup che ho bisogno di cancellarli ad un certo punto. Questa è sfortuna, perché voglio conservare almeno i file che ho cancellato e che ho cambiato. Questo tipo di backup mi consentirà di farlo.

Quindi stavo pensando

  • una corsa a vuoto rsync TARGET - & gt; SOURCE per ottenere un elenco di file modificati dal punto di vista di TARGET
  • uno script per copiare questi file in cartelle specifiche con l'ora e la data nel nome della cartella
  • un normale SOURCE rsync - & gt; TARGET

So che questo sta alterando il backup, ma penso che dato il numero di backup che ho, questo non dovrebbe essere un problema.

Esiste un nome per questo tipo di backup (domanda principale). Se possibile, come lo raggiungerebbe su ubuntu?

Non sono sicuro se un file che viene eliminato, dovrebbe far parte di ogni singola diff in seguito. Questo è un po 'una scelta tra un diff per ogni backup o un grande diff che è incrementale. Di nuovo, non sono sicuro della terminologia.

    
posta don.joey 21.11.2014 - 16:43

2 risposte

1

Mi sembra che quello che stai cercando sia esattamente il modo in cui funziona BackupPC. Vedi link

Puoi installarlo su Ubuntu usando

sudo apt-get install backuppc

Si noti tuttavia che l'installazione di default non fa nulla da solo. Dovrai creare i file di configurazione per ogni macchina e / o directory di cui vuoi eseguire il backup.

Il modo in cui funziona BackupPC è trasferendo una copia dei file sul primo backup, quindi sui backup successivi, crea collegamenti reali ai file non modificati e copia quelli modificati. SO al proprio filesystem, quando si accede alla directory di backup di BackupPC, si ha un'istantanea del modo in cui i file sono stati visualizzati in un determinato momento.

Vedi link o installa backuppc sul tuo sistema e leggi i documenti lì.

Ecco come installarlo (il processo può variare nelle versioni più recenti): Come configurare Backuppc in ubuntu 12.04?

Controlla i problemi con diversi filesystem su sistemi diversi (Windows / Linux / Macintosh). Inoltre, le differenze nel modo in cui il volume di backup è collegato tra l'host e i client di backup (ad esempio unità di rete e unità locali) avranno un enorme effetto sul tempo necessario per completare un backup.

    
risposta data Tommy Trussell 26.11.2014 - 17:06
0

Vorrei solo usare git. È possibile annullare le modifiche necessarie e ospitare il repository "remoto" su un disco rigido, un altro computer o qualsiasi altra cosa si desideri. È possibile controllare lo stato delle modifiche e inviare al repository secondo necessità, il che significa che non è necessario un backup giornaliero. Detto questo, potresti volere i backup giornalieri, nel qual caso potresti scrivere uno script bash ed eseguirlo come lavoro acron se 'git status' rivela che si sono verificati cambiamenti.

    
risposta data Adam 21.11.2014 - 19:03

Leggi altre domande sui tag