linux user group brescia

immagine del castello

Archivio della mailing list

backuppare (e comprimere) un device intero con tar

Diego Guella diego.guella a sircomtech.com
Ven 16 Nov 2007 07:32:05 UTC
----- Original Message ----- 
>From: "Luca Coianiz" <luca a coianiz.it>
>
> Rimane un po' il dubbio, salvo provare, se rasando /dev/hdb1 e
>ricostruendolo (mkfs...) un bzip2 -d < /backup/hdb1.bz2 > /dev/hdb1 farebbe
>tornare tutto come prima: mi fido o faccio la prova? :-D

Meglio fare la prova :D

Queste sono le prove che ho fatto io, lavorando sia con delle compactflash 
collegate direttamente al controller IDE (non tramite card reader USB), sia 
con device virtuali (Virtual PC):

Allora, per avere una copia esatta del disco serve una tabella delle 
partizioni esattamente uguale.
Nel MBR del disco c'è il boot loader (primi 446 bytes) e la tabella delle 
partizioni (byte rimanenti per arrivare a 512).

Poniamo queste restrizioni:
1)Assumiamo che tu debba fare il backup di hda.
2)Tutte queste prove le ho sempre fatte con hda NON MONTATO, forse 
funzionano anche con hda montato, ma non ho mai provato
3)Non ti so garantire quanto questo sistema funzioni con partizioni 
estese/logiche

Così ti salvi il MBR in un file:
dd if=/dev/hda of=/backup/hda_mbrbackup bs=512 count=1
Come hai già visto, così ti salvi tutta la partizione hda2:
dd if=/dev/hda2 of=/backup/hda2_backup

Ora, facciamo capitare qualcosa di brutto a hda (ne basta uno di questi):
(N.B.: ti ricordo che stiamo potenzialmente DISTRUGGENDO I DATI SUL DISCO 
con questi comandi)
-con fdisk cancella tutte le partizioni
-echo "blablablablablablablablablablablablablablablablablablablablabla" > 
/dev/hda
-dd if=/dev/random of=/dev/hda bs=1024 count=8 seek=5

Ok, ora abbiamo un hda corrotto.
Ripristiniamo il MBR:
dd if=/backup/hda_mbrbackup of=/dev/hda bs=512 count=1
Ora hda è stato praticamente partizionato, bisognerebbe informare il sistema 
operativo di questo cambiamento, ma purtroppo non so come fare :( dunque 
riavviamo.
Ripristiniamo la partizione che ci interessa:
dd if=/backup/hda2_backup of=/dev/hda2

Ora puoi montare hda2 e vedere se tutto funziona come prima (dovrebbe :)

Al limite, ti puoi sempre fare il backup di tutto hda leggendo direttamente 
da hda, e questo dovrebbe portarsi dietro tutte le partizioni, anche quelle 
estese, credo... non ho mai provato.

Come diceva Gelmini, questo è un sistema "bulldozer", ti copi veramente 
tutti i dati dal disco, ma forse non è questo quello di cui hai bisogno.
Dalla sua ha che è un sistema molto semplice :)


Ciao
Diego




Maggiori informazioni sulla lista Lug