Elimina automaticamente il backup ruotato senza interrompere rsync


1

Come posso assicurarmi che i file eliminati localmente siano stati ruotati prima di eliminarli sul server, senza interrompere la rsyncing incrementale?

Di solito rsync i miei file in /backup/active/ sul mio server, che dovrebbe sempre contenere il mirror più recente e dovrebbe riflettere il 100% del client. L'intera cartella verrà ruotata ogni notte fino a /backup/cold/ utilizzando ddar e online usando Tarsnap . Voglio assicurarmi che ogni istantanea che viene ruotata contenga solo i file effettivamente presenti sui client in quel momento. Come posso assicurarmi che anche i file che vengono cancellati sul client vengano eliminati nel backup, senza interrompere rsync o eliminare accidentalmente file non ruotati?

Non voglio usare rsync --remove perché ciò potrebbe rimuovere i file che non sono ancora stati ruotati e sottoposti a backup. Né posso semplicemente spostare l'intero /backup/ cartella una rotazione, perché ho bisogno di mantenere le funzioni incrementali di rsync.


Forse dovresti prendere in considerazione l'utilizzo delle funzionalità di collegamento rsync ( --link-dest ) per mantenere una gerarchia di backup.
Der Hochstapler

Voglio mantenere le cose semplici per evitare errori, e gli hard link sono una delle cose che non mi sento ancora abbastanza a mio agio con il fatto che voglio rischiare i miei backup.
Arkenklo

Risposte:


1

Quindi l'obiettivo è proteggere i backup, giusto? Presumo che non ci interessa come funziona finché si ottiene il lavoro.

Quindi, mentre Oliver dà il suggerimento giusto --link-dest non c'è motivo di reinventare la ruota a meno che tu non voglia imparare e fare le tue esperienze.

rsnapshot è stato inventato per questo scopo, è stato usato per diversi anni, e se vuoi il codice sorgente, potresti trovarlo disponibile su github .

Per una breve storia di altre esperienze degli utenti, prova a leggere questo blog: http://rayed.com/wordpress/?p=1379 in quanto dà un rapido senso di "lezioni apprese".

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.