Backup multilivello

Il semplice metodo di backup descritto nella precedente sezione è spesso adeguato per l'uso personale o per siti piccoli; per un uso più pesante sono migliori i backup multilivello.

Il metodo semplice ha due livelli di backup: completo ed incrementale. Questo schema può essere generalizzato a qualsiasi numero di livelli: il backup completo sarebbe di livello 0, i diversi livelli di backup incrementale sarebbero i livelli 1, 2, 3 e così via. A ciascun livello incrementale si fa il backup di tutto quello che è cambiato dal precedente dello stesso livello o di un livello superiore.

Lo scopo di questo metodo è di permettere in modo poco dispendioso una storia di backup più lunga. Nell'esempio della sezione precedente la storia di backup andava fino al precedente backup completo; si poteva estendere con più nastri, ma solo alla frequenza di una settimana per ogni nastro, il che poteva essere piuttosto dispendioso. Una storia di backup più lunga è utile, dato che i file cancellati o corrotti spesso non vengono notati per un lungo tempo. Anche una versione non molto aggiornata di un file spesso è meglio che niente.

Con il multilivello la storia di backup può venire estesa in maniera più economica. Ad esempio, se compriamo dieci nastri, potremmo usare il numero 1 e il 2 per i backup mensili (il primo venerdì del mese), i nastri dal 3 al 6 per i backup settimanali (gli altri venerdì: notate che ci possono essere cinque venerdì in un mese, quindi abbiamo bisogno di altri quattro nastri) e i nastri dal 7 al 10 per i backup giornalieri (dal lunedì al giovedì). Con solo altri quattro nastri possiamo estendere la storia di backup da due settimane (dopo che tutti i nastri giornalieri sono stati usati) a due mesi. È vero che non potremo recuperare tutte le versioni di ciascun file durante questi due mesi, ma quelle per cui possiamo farlo sono spesso più che sufficienti.

La Figura 10-1 mostra quali livelli di backup vengono usati in ciascun giorno e da quali backup si possono recuperare i file alla fine del mese.

Figura 10-1. Un esempio di backup multilivello.

I livelli di backup possono essere usati anche per mantenere il tempo di recupero dei filesystem al minimo. Se avete molti backup incrementali con i numeri di livello che crescono costantemente, dovrete usarli tutti se volete recuperare l'intero filesystem; potete invece usare dei livelli non monotoni, e tenere basso il numero di backup da usare per il recupero dei file.

Per minimizzare il numero di nastri da cui recuperare potete usare un livello più basso per ciascun nastro incrementale. In questo caso, però, il tempo per fare backup cresce (ciascuna copia di backup contiene tutto quello che è stato modificato dal precedente backup completo). Uno schema migliore viene suggerito nella pagina man di dump e descritto in Tabella 10-1. Usate la seguente successione di livelli di backup: 3, 2, 5, 4, 7, 6, 9, 8, 9... In questo modo si mantengono bassi sia il tempo di backup che quello di recupero, ed al massimo dovrete recuperare due giorni di lavoro. Il numero di nastri per recuperare tutto dipende da quanto tempo fate passare tra i backup completi, ma è meno che negli schemi semplici.

Tabella 10-1. Un efficace schema di backup usando molti livelli

NastroLivelloBackup (gg)Nastri di recupero
10n/a1
2311, 2
3221, 3
4511, 2, 4
5421, 2, 5
6711, 2, 5, 6
7621, 2, 5, 7
8911, 2, 5, 7, 8
9821, 2, 5, 7, 9
10911, 2, 5, 7, 9, 10
11911, 2, 5, 7, 9, 10, 11
...911, 2, 5, 7, 9, 10, 11, ...

Uno schema strano può ridurre il lavoro necessario, ma implica più cose da seguire: dovete decidere se ne vale la pena.

dump ha incluso il supporto per i livelli di backup, per tar e cpio questo deve essere implementato con script di shell.