Backup con ddrescue
Ho voluto provare ddrescue al posto del classico dd soprattutto per la possibilità di usare i file sparsi.
Come sapete dd copia l'intero device passato in input, non fa differenza che lo spazio nel filesystem sia occpuato (per la presenza di file) o libero. Questo comporta un dispendio in termini di tempo e spazio.
Ho fatto dei semplici test usando due device lvm da 1G.
Il primo (in) è formattato con ext3 e ha 20M di dati veri e propri.
Il secondo (out) non è neanch formattato.
Confronto dd e gddrescue senza uso dell'opzine --sparse
dd /dev/vg00/in /dev/vg00/out 2m21.889s
ddrescue /dev/vg00/in /dev/vg00/out 1m53.992s
Confronto dd e gddrescue CON uso dell'opzine --sparse
ddrescue -S /dev/vg00/in /dev/vg00/out 0m24.435s
Confronto ddrescue con e senza opzione --sparse nel creare un file immagine
ddrescue -S /dev/vg00/in out.img 0m21.199s
ddrescue /dev/vg00/in out.img 1m7.725s
Confronto spazio occupato su disco (dimensione apparente)
ls -lh out*
-rw-r--r-- 1 root root 1,0G 11 ago 11.01 out.img
-rw-r--r-- 1 root root 1,0G 11 ago 11.05 out_nosparse.img
Confronto spazio occupato su disco (dimensione effettiva)
du -kh out*
71M out.img
1,1G out_nosparse.img
Ho provato a comprimere con lzma e gzip i file ottenuti
ls -lh out*.gz
-rw-r--r-- 1 root root 64M 11 ago 11.53 out.img.lzma
-rw-r--r-- 1 root root 64M 11 ago 11.54 out_nosparse.img.lzma
ls -lh out*.gz
-rw-r--r-- 1 root root 65M 11 ago 11.58 out.img.gz
-rw-r--r-- 1 root root 65M 11 ago 11.59 out_nosparse.img.gz
Nota 1: du -kh restituisce lo stesso valore di ls -lh.
Nota 2: lzma oltre 8 minuti, gzip 30 secondi.
CONSIDREZIONE
Gli algoritmi di compressione sono molto efficienti nel comprimere lo spazio vuoto.
Un'immagine compressa fatta con dd e con ddrescue sono equivalenti in termini di spazio occupato su disco nonostante lo spazio effettivo dei file non compressi siano diversi.
Non mi sembra sia possibile usare una pipe con ddrescue.
Questa non ci permette di avere subito un'immagie compressa tramite ddrescue come si potrebbe fare con dd:
dd if=/dev/vg00/in | gzip -c > out_nosparse.img.gz
In termini di tempo penso convenga usare ddrescue con l'opzione --sparse per fare una copia da device a device.
Per creare un'immagine compressa forse conviene dd per evitare di occupare troppo spazio su disco seppur non effettivo.
- sirio81's blog
- Login o registrati per inviare commenti
