Traduzioni: English - Français - Italiano


Masterizzare supporti ottici

Ci sono diversi programmi grafici disponibili in Debian per masterizzare CD o DVD. Installare il pacchetto relativo

Questa pagina descrivere l'uso di masterizzatori di supporti ottici con programmi con interfaccia a riga di comando.


Creare un file di immagine ISO 9660

In Debian sono disponibili due pacchetti per produrre file system ISO 9660: genisoimage e xorriso. Questi programmi supportano le stesse opzioni dei vecchi programmi mkisofs e cdrecord.

Dopo l'installazione di xorriso o genisoimage, si può mettere l'albero di file /percorso/della/directory in un file immagine di file system ISO 9660 chiamato mia.iso usando uno tra i seguenti comandi:

genisoimage -v -J -r -V MY_DISK_LABEL -o mia.iso /percorso/della/directory
xorriso -as mkisofs -v -J -r -V MY_DISK_LABEL -o mia.iso /percorso/della/directory

Vedere anche Manipolazione di ISO.

Masterizzare il file immagine su un CD, DVD o BD

Dopo aver installato wodim, cdrskin o xorriso, si può masterizzare il file immagine mia.iso su un CD usando uno tra:

wodim -v dev=/dev/sr0 -dao mia.iso
cdrskin -v dev=/dev/sr0 -dao mia.iso
xorriso -as cdrecord -v dev=/dev/sr0 -dao mia.iso

I comandi cdrskin e xorriso funzionano anche su dischi BluRay (wodim non dovrebbe essere usato con supporti DVD o BD, vedere qui). Per la masterizzazione di BluRay si può anche installare il pacchetto growisofs:

growisofs -dvd-compat -speed=8 -Z /dev/sr0=mia.iso -quiet

Come di consueto con la riga di comando, la masterizzazione partirà subito, senza richiedere conferma.

Testare

Per confrontare i codici MD5 è necessario limitare la lettura dal CD, DVD o BD ad esattamente lo stesso numero di blocchi di dati che è stato scritto dal programma di masterizzazione. Per farlo, cercare la dimensione del file dell'immagine ISO.

blocks=$(expr $(ls -l mia.iso | awk '{print $5}') / 2048)
dd if=/dev/sr0 bs=2048 count=$blocks | md5sum
md5sum mia.iso

Questo dovrebbe restituire stringhe del codice di controllo MD5 identiche. Ad es.:

8213+0 records in
8213+0 records out
16820224 bytes (17 MB) copied, 12.189631 s, 1.4 MB/s
492bd13e477b3efb507149152a4e7736  -
492bd13e477b3efb507149152a4e7736  mia.iso

Si può anche montare il supporto e confrontare i file dei dati con i loro originali sull'hard disk usando:

sudo mount /dev/sr0 /mnt/cdrom
diff /mnt/cdrom/mio/file /percorso/della/directory
sudo umount /dev/cdrom

Può essere necessario creare la directory /mnt/cdrom prima di poterla montare. Se si espelle il supporto e lo si reinserisce, potrebbe venire automaticamente montato in /media/. In questo caso non è necessario eseguire i comandi con sudo.

CD audio

I riproduttori di CD musicali si aspettano il formato CD-DA, che non è un file system, ma un semplice elenco di entità in stile file chiamate Tracce. Ogni traccia è solitamente un brano di musica, ad esempio una canzone completa.

Il contenuto delle tracce deve essere presentato come file dati con campioni non compressi con una frequenza di campionamento di 44100 Hz, 16 bit per campione, 2 canali, con ordine dei byte little-endian e intestazione WAV. Questo è ciò che viene chiamato file .wav.

Dopo l'installazione del pacchetto cdrskin o wodim usare:

cdrskin -v dev=/dev/sr0 -sao -audio traccia1.wav traccia2.wav ... tracciaN.wav
wodim -v dev=/dev/sr0 -sao -audio traccia1.wav traccia2.wav ... tracciaN.wav

Il supporto risultante non può essere letto da dd o altri lettori di dati. La lettura di tracce audio da CD può essere fatta con cdrskin con l'opzione extract_audio_to= o readom dal pacchetto wodim.

Indirizzo dell'unità

Gli esempi visti prima usano l'indirizzo del file di device della prima unità ottica: /dev/sr0. Per ottenere un elenco di tutti i device delle unità ottiche eseguire uno di:

cdrskin --devices
xorriso -devices

che restituiranno qualcosa del tipo

0  -dev '/dev/sr0' rwrw-- :  'HL-DT-ST' 'BDDVDRW GGC-H20L'
1  -dev '/dev/sr1' rwrw-- :  'HL-DT-ST' 'DVDRAM GH24NSC0'
2  -dev '/dev/sr2' rwrw-- :  'Optiarc ' 'BD RW BD-5300S'

wodim effettuerà questo lavoro solo se esistono gli obsoleti file di device /dev/scd*.

La sequenza dei numeri delle unità può cambiare ad ogni riavvio. Se sono necessari nomi di device persistenti, considerare l'uso di quelli lunghi nella directory /dev/disk/by-id/. Li si riconosce perché hanno gli stessi nomi di produttore e modello visti nei comandi --devices precedenti, ad esempio:

/dev/disk/by-id/usb-Optiarc_BD_RW_BD-5300S_306663601043-0:0

Masterizzazione al volo di ISO 9660

Si può evitare di dover memorizzare il file con l'immagine del file system ISO 9660 indirizzando con una pipe l'output del produttore dell'ISO sullo standard input del programma di masterizzazione. Basta omettere l'opzione -o del produttore e usare "-" come nome del file di dati con il programma di masterizzazione. Usare l'opzione -tao invece di -dao o -sao, perché questi ultimi devono sapere in anticipo la quantità di dati:

genisoimage -v -J -r -V MIA_ETICHETTA_DISCO /percorso/della/directory \
| wodim -v dev=/dev/sr0 -tao -

Con growisofs:

genisoimage ... \
| growisofs -Z /dev/sr0=/dev/fd/0

Il programma xorriso con il suo insieme di comandi nativo può fare lo stesso in un unico processo

xorriso \
  -md5 on \
  -outdev /dev/sr0 \
  -blank as_needed \
  -joliet on \
  -volid MIA_ETICHETTA_DISCO \
  -map /home/utente/directory / \
  -find / -exec mkisofs_r --

ISO 9660 multi-sessione

Sebbene i file system ISO 9660 siano in sola lettura, è possibile accodare nuovi file dati e un nuovo albero di directory che può fare riferimento sia ai vecchi file sia ai nuovi.

Sessione iniziale (se è necessario sovrascrivere completamente un supporto riutilizzabile come BD-RE):

xorriso \
  -for_backup \
  -outdev /dev/sr0 \
  -blank as_needed \
  -volid MIO_BACKUP_"$(date '+%Y_%m_%d_%H%M%S')" \
  -update_r /home/utente/documenti /documenti

Ulteriori sessioni aggiornate aggiungeranno nuovi file, sovrascriveranno i file modificati e rimuoveranno i file cancellati:

xorriso \
  -for_backup \
  -assert_volid 'MIO_BACKUP_*' fatal \
  -dev /dev/sr0 \
  -volid MIO_BACKUP_"$(date '+%Y_%m_%d_%H%M%S')" \
  -update_r /home/utente/documenti /documenti

Ad un certo punto durante il tentativo di aggiornamento il programma farà sciopero perché il supporto è pieno. Allora sarà necessario scrivere una sessione iniziale in un altro supporto vuoto o riutilizzabile

Verifica della sessione dati più recente:

xorriso -for_backup -indev /dev/sr0 -check_md5 FAILURE --

Verifica di tutte le sessioni registrate

xorriso -for_backup -indev /dev/sr0 -check_media --

In caso di non corrispondenza il valore di uscita restituito è diverso da zero

if test $? = 0 ; then echo "OK" ; else echo "NON CORRISPONDENTI!" ; fi

Informazioni su configurazioni passate

Prima di Linux 2.4, l'uso del driver ide-scsi per i masterizzatori poteva migliorare le prestazioni ("hdc=ide-scsi" nelle opzioni del bootloader lilo/GRUB). Il rilevamento del masterizzatore come dispositivo SCSI poteva essere verificato con cdrecord -scanbus. In Linux 2.6, ide-cd ha rimpiazzato ide-scsi per i masterizzatori di CD.

In alcuni sistemi può essere necessario aggiungere il proprio account utente al gruppo cdrom (o avere un qualche tipo di accesso in scrittura al file di device del masterizzatore in /dev/).

Vedere anche:


CategorySoftware CategoryHardware CategoryCommandLineInterface CategoryDesktopApplication CategorySound