9.3.7 Creare un file immagine di un CD
Alcuni CD-R e CD commerciali hanno dei settori spuri alla fine, cosa che rende
impossibile la copia tramite dd
(il CD di Windows 98 � uno di
questi). Il pacchetto cdrecord
ha il comando readcd
.
Usatelo per copiare qualsiasi CD in un file immagine. Se � un disco di dati,
montatelo ed eseguite mount
per vedere le dimensioni reali.
Dividete il numero ottenuto (in blocchi = 1024 bytes) per 2 per avere il numero
reale di settori del CD (2048 bytes). Lanciate readcd
con le
opzioni ed usate l'immagine risultante per bruciare il CD-R/RW.
# readcd dev=target,lun,scsibusno # select function 11
Impostate tutti e tre i parametri a 0 per la maggior parte dei casi. Talvolta
il numero di settori dato da readcd
� eccessivo! Utilizzate il
numero ottenuto da un montaggio reale per i migliori risultati.
Dovrebbe essere notato che l'uso di dd
ha alcuni problemi se usato
su CD-ROM. La prima esecuzione del comando dd
pu� causare un
messaggio di errore e produrre un'immagine del disco pi� piccola con perdita
della coda. La seconda esecuzione di dd
pu� produrre un'immagine
pi� grande, con dati spuri attaccati alla fine su alcuni sistemi se le
dimensioni dei dati non sono specificate. Solo la seconda esecuzione di
dd
con le dimensioni corrette dei dati specificate e senza
espellere il CD dopo un messaggio di errore, sembra evitare questi problemi.
Se, per esempio, le dimensioni dell'immagine mostrate da df
sono
di 46301184 blocchi, usate il comando seguente due volte per
ottenere l'immagine corretta (queste sono mie informazioni empiriche):
# dd if=/dev/cdrom of=cd.img bs=2048 count=$((46301184/2))