Riporto di seguiti i links agli argomenti di questa pagina.
PremessaCreare l'immagine del CDScrittura del CD
Identificare il masterizzatore
Riquadri
Le regole grammaticali dei CD
Emulazione SCSI (configurazione)
Linux è perfettamente in grado di masterizzare in vari modi CR-R e CD RW, con dati, audio, ed in vari formati.
Utilizzano Linux, inoltre, non ho mai dovuto buttare un CD rovinato in fase di masterizzazione (cosa che invece mi accadeva con una certa frequenza quando utilizzavo Windows).
Si tratterà di come masterizzare CD con comandi testuali.
Questi comandi sono disponibili in quasi tutte le distribuzioni, offrono un controllo preciso delle operazioni da effettuare.
Le interfaccie grafiche, sono diverse ed in continua evoluzione, richiedono una appropriata configurazione (che è variabile da un software all'altro), non sono sempre installate in Linux, e vengono utilizzate per "mascherare" i comandi testuali che descrivo in questa pagina.
Per questo ho preferito trattare della masterizzazione da linea di comando, un metodo "universale", affidabile, e che consente un ottimo controllo, con meno fatica di quel che si pensa.
Dopo aver provato questo sistema di operare da linea di comando, vi potreste meravigliare della sua efficienza.
Il necessario si riduce a molto poco.
Probabilmente è già tutto presente sulla vostra macchina:
Fino a non molto tempo fa i CD si potevano solo leggere, e non era prevista la possibilità di aggiungere files in fasi successive alla loro creazione.
Nei CD pertanto i files vengono registrati su di un'unica traccia disposta a spirale sulla superficie del disco, e questa traccia deve essere preparata prima della registrazione del disco.
Questa traccia a spirale può essere preparata seguendo regole grammaticali diverse:
Le regole grammaticali dei CD:Il CD può essere registrato seguendo diversi standards di cui riporto di seguito le caratteristiche:
Conoscere l'esistenza di queste regole consente di creare CD il più possibile conformi agli scopi od alle persone a cui è destinato. |
Prima di cominciare a registrare un CD bisogna preparare i dati da registrare e conoscere come il computer identifica il masterizzatore.
Riunire ed organizzare tutti i files e le directory da copiare sul CD, secondo le proprie preferenze, in una posizione di vostra scelta sul disco fisso del computer (tipicamente una cartella nella vostra home directory).
Per questa operazione si possono utilizzare anche gli strumenti grafici che preferite (Konqueror di KDE, Nautilus di Gnome)
Dopo aver riunito tutti i files da copiare si deve preparare la traccia che verrà scitta sul CD specificando le "regole grammaticali" da usare.
Questa traccia sarà un file che contiene tutti i file contenuti nel CD e viene definito fileimmagine ed in genere ha l'estensione .iso.
I file.iso sono reperibili anche su internet e consentono ad esempio di masterizzare una distribuzione Linux od un CD di installazione di software.
Per creare un file.iso che contiene l'immagine del CD si usa il programma mkisofs con una sintassi analoga a quella riportata di seguito:
[aldo@localhost aldo]$ mkisofs -iso-level 2 -o backup.iso /mnt/windows/dati/
Questo comando va digitato in una finestra di terminale od in una consolle e può essere eseguito senza disporre dei privilegi di amministratore (notare il simbolo $ del prompt).
Con questo comando viene creato un file immagine chiamato backup.iso nella directory /home/aldo/ (nel prompt della shell si vede che il comando è stato dato dalla directory /aldo/).
Il parametro -iso-level 2 indica che il CD verrà scritto usando il file system ISO-9660-level 2 (questo parametro poteva essere sostituito da -r per un file system ROCK RIDGE, oppure da -J per un file system Joliet, oppure da -b per un file system EL TORITO
Il parametro -o consente di specificare il nome da attribuire all'immagine .iso (backup.iso in questo caso).
/mnt/windows/dati/ indica che nel CD verranno registrati tutti i dati (directory e files) al di sotto di /mnt/windows/dati/ (il punto in cui normalmente registro i dati sul mio PC).
Nelle distribuzioni Linux più recenti mkisofs è stato sostituito da genisoimage (short for generate ISO image).
Per ragioni storiche Linux riconosce e comanda i masterizzatori (anche quelli con interfaccia EIDE) come se fossero collegati ad un controller SCSI.
Se non sapete che cosa sono e cosa significano EIDE e SCSI ha poca importanza, si tratta più o meno del modo in cui il dispositivo viene collegato al resto del computer. Quello che interessa a noi è che con l'interfaccia SCSI il masterizzatore viene identificato da 3 numeri, e dobbiamo conoscere questi numeri per "dire" a Linux cosa usare per masterizzare.
Per scoprire i numeri segreti del vostro masterizzatore dovete aprire una finestra di terminale od una consolle e digitare il seguente comando con i privilegi di root (notare il simbolo # del prompt):
[aldo@localhost aldo]# cdrecord -scanbus
Nelle distribuzioni Linux più recenti cdrecord è stato sostituito da wodim (acronimo di write optical disk media) ed il comando diventa.
[aldo@localhost aldo]# wodim --devices
Il computer risponderà presentando una serie di messaggi, ed alla fine una colonna con delle tripplette di cifre seguite dal dispositivo corrispondente.
Annotate le tre cifre che si trovano a fianco del nome del vostro dispositivo di masterizzazione. Così non avrete più bisogno di lanciare questo comando la prossima volta che dovete masterizzare un cd (il mio lettore DVD viene identificato con i numeri 0,0,0; il CD-recorder viene identificato con i numeri 0,1,0).
Il risultato del comando cdrecord -scanbus sul mio PC
Far credere al PC che il CD drive EIDE sia un CD drive SCSICome precisato poco sopra per masterizzare CD con linux bisogna che il PC comandi i drive come se si trattesse di lettori SCSI. Come sono identificati i CD drive EIDELinux tratta i driver di CD come dischi fissi e gli attribuisce un nome che dipende da come sono collegati alla scheda madre. Caricare l'emulazione SCSI all'avvio di LinuxÈ necessario modificare le configurazioni di LILO (LInux LOader), il programma che avvia Linux, in modo che carichi nel kernel i moduli di emulazione dei drive SCSI per i drive EIDE. [aldo@localhost aldo]# kedit /etc/lilo.conf
Bisogna poi far leggere le modifiche effettuate al file di configurazione in modo che vengano applicate ad ogni avvio, con il comando: Ultimi ritocchiA questo punto, dopo aver riavviato il computer, cdrecord identificherà correttamente i dispositivi, e sarà possibile eseguire la masterizzazione con i comandi testuali, ma probabilmente non sarà più possibile "suonare" CD musicali perché il dispositivo /dev/cdrom punta al drive EIDE che dopo le modifiche non esiste più (ora riconosciuto come SCSI).
I comandi illustrati vanno dati con i privilegi di amministratore (come ricordato dal simbolo cancelletto (#) nel prompt dei comandi. |
A questo punto tutto è pronto per la scrittura dei dati sul CD con il seguente comando (da eseguire con i privilegi di root -> notare il simbolo # del prompt):
[aldo@localhost aldo]# cdrecord speed=6 dev=0,0,0 -v /home/aldo/backup.iso
Il parametro speed=6 è opzionale, ed indica la velocità che deve essere utilizzata dal masterizzatore per scrivere i dati sul CD.
Se non viene precisata il programma stabilisce autonomamente la velocità appropriata dopo aver valutato il tipo di disco impiegato.
Il parametro dev=0,0,0 indica che quale masterizzatore utilizzare per l registrazione (i 3 numeri sono ricavati con cdrecord -scanbus).
Il parametro -v è opzionale, e serve per mostrate sul video dei messaggi (-v sta per "verbose") che illustrano cosa sta facendo il programma.
/home/aldo/backup.iso indica la posizione ed il nome del file con l'immagine .iso da registrare sul cd. In questo caro sarebbe stato sufficiente specificare solamente backup iso, poiché il comando cdrecord è stato dato dalla mia home directory (il punto in cui era stato registrato il file .iso.
Le informazioni fornite da cdrecord durante il funzionamento sono davvero molte!
I CD audio vengono realizzati a partire dai files dei singoli brani di cui è composto
Per estrarre da un CD audio i files (in formato .wav) contenenti i singoli brani si usno i programmi di ripping.
Ce ne sono molti sia per windows (segnalo CDex) che per Linux (segnalo Grip) ma se volete estrarre tutte le tracce di un CD basta il seguente comando (anche senza i privilegi di root):
[aldo@localhost aldo]$ cdparanoia -wB
Il parametro -w indica di trasformare la traccia in formato .wav.
Il parametro -B indica di creare una singolo file .wav per ogni traccia audio del CD.
Nelle distribuzioni linux più recenti si può utilizzare icedax (acronimo di incredible digital audio extractor), which was forked from the cdda2wav.
Consiglio di riunire i files.wav che volete registrare sul CD in una singola directory.
È da notare la possibilità di creare un CD audio che contiene solo i brani che volete, nell'ordine che preferite, e potete inserire anche canzoni registrate da voi stessi (dalla scheda audio del vostro PC).
Il comando è il seguente (con i privilegi di root):
[aldo@localhost aldo]# cdrecord speed=6 dev=0,1,0 -v -audio /home/aldo/tu_scendi_dalle_stelle.wav /home/francesca/bianco_natale.wav
Se tutti i vostri files sono riuniti in una cartella e non vi importa l'ordine con cui vengono registrati potete fare come riportato di seguito:
[aldo@localhost aldo]# cd /home/aldo/audio
aldo@localhost audio]# cdrecord speed=6 dev=0,1,0 -v -audio *.wav
Il significato dei parametri speed=6 dev=0,1,0 -v è già stato illustrato nel paragrafo precedente.
Il parametro -audio serve per istruire il masterizzatore a registrare un CD in formato compatibile con i lettori di CD audio.
/home/aldo/tu_scendi_dalle_stelle.wav /home/francesca/bianco_natale.wav nel primo caso e *.wav indicano la posizione, il nome, e l'ordine con cui i file.wav andranno a formare il CD audio.
Nelle distribuzioni Linux più recenti cdrecord è stato sostituito da wodim (acronimo di write optical disk media) ed il comando diventa.
[aldo@localhost aldo]# cd /home/aldo/audio
[aldo@localhost audio]# wodim -eject -tao -speed=0 dev=/dev/scd0 -v -audio -pad *.wav
-eject espelle il disco alla fine della masterizzazione.
-tao Track at once
-speed=0 regola la velocità di masterizzazione al massimo possibile, si può mantenerla forzatamente bassa inserendo speed=1 oppure speed=2
dev=/dev/scd0 è l'identificazione del dispositivo di masterizzazione ottenuta come precisato precedentemente.
-v mostra messaggi informativi nella console durante il processo.
-audio indica che si tratta di un CD audio
-pad regola le dimensioni delle tracce audio a multipli di 2352 bytes
Per la cpoia di CD esiste un apposito programma.
Come negli altri casi va utilizzato con i privilegi di amministratore.
La sintassi è la seguente:
[aldo@localhost aldo]# cdrdao copy --device 0,1,0 --driver generic-mmc --source-device 0,0,0 --source-driver generic-mmc
cdrdao (CD Record Disk At Once) è il comando per la copia diretta di un disco;
copy indica a cdrdao di eseguire la copia del disco (può svolgerere una serie di altri compiti);
--device n,n,n serve a fornire al programma "i numeri" di identificazione del dispositivo di masterizzazione.
--driver nomedriver è un parametro opzionale che consente di precisare il nome del driver da utilizzare per comandare il masterizzatore (nel mio caso senza specificare il nome di driver generico non funziona niente).
--source-device n,n, serve a fornire al programma "i numeri" di identificazione del dispositivo di lettura del CD da copiare.
--source-driver nomedriver è un parametro opzionale che consente di precisare il nome del driver da utilizzare per comandare il lettore di CD (nel mio caso senza specificare il nome di driver generico non funziona niente).
--speed n (es -- speed 6) è un parametro opzionale che consente di specificare la velocità di esecuzione della copia.
--eject è un parametro opzionale che serve per espellere il disco al termine della scrittura.
--on-the-fly è un parametro opzionale e serve per eseguire la copia del CD senza registrare i dati sul disco fisso. Utilizzando questo parametro c'è un elevato rischio di rovinare il CD da masterizzare se si verifica un ritardo nella fornitura dei dati da masterizzare.
Un CD mixed mode può contenere sia dati da leggere con un PC, sia musica da riprodurre sull'impianto stereo.
Il comando è semplice e riunisce quanto detto nei precedenti 2 paragrafi:
[aldo@localhost aldo]# cdrecord speed=6 dev=0,1,0 -v -data /home/aldo/backup.iso -audio /home/aldo/tu_scendi_dalle_stelle.wav presentazione.wav finale.wav
I CD multisessione consentono di registrare dati su un CD più riprese, senza "chiudere il CD" dopo averlo registrato.
Ad ogni "sessione" di registrazione di dati si perdono circa 14 MB (oltre a quelli dei dati che vengono registrati).
"Chiudere" il CD impedisce di aggiungere altri dati ma aumenta la compatibilità del disco soprattutto con lettori vecchi.
La sintassi è la seguente:
[aldo@localhost aldo]# cdrecord speed=6 dev=0,1,0 -v -multi -data /mnt/windows/dati/
oppure (per creare un disco mixed mode).
[aldo@localhost aldo]# cdrecord speed=6 dev=0,1,0 -v -multi -data /mnt/windows/dati/ -audio /home/aldo/tu_scendi_dalle_stelle.wav
È da notare che in questo caso non è necessario usare mkisofs per creare l'immagine del CD, ma basta semplicemente specificare il nome della directory in cui sono presenti i files da registrare
Per aggiungere un'altra sessione senza chiudere il cd si ripete il comando:
[aldo@localhost aldo]# cdrecord speed=6 dev=0,1,0 -v -multi -data /mnt/windows/dati/mp3/
Per chiudere la sessione dopo aver aggiunto dati:
[aldo@localhost aldo]# cdrecord speed=6 dev=0,1,0 -v -data /mnt/windows/dati/mp3/
Per chiudere la sessione senza aggiungere dati:
[aldo@localhost aldo]# cdrecord speed=6 dev=0,1,0 -fix
Si può eseguire una cancellazione "rapida" che cancella solo l'"indice" del disco e lo fa "sembrare" vuoto
[aldo@localhost aldo]# cdrecord speed=6 dev=0,1,0 -v -blank=fast
Oppure si può eseguire una cancellazione comleta del disco che però è molto più lunga:
[aldo@localhost aldo]# cdrecord speed=6 dev=0,1,0 -v -blank=all
Riporto di seguito i comandi per creare un CD dati.
[aldo@localhost aldo]$ mkisofs -iso-level 2 -o backup.iso /mnt/windows/dati/
[aldo@localhost aldo]$ su
digitare password di root
[aldo@localhost aldo]# cdrecord speed=6 dev=0,1,0 -v /home/aldo/backup.iso
Per creare un cd multisessione:
[aldo@localhost aldo]# cdrecord speed=6 dev=0,1,0 -v -multi - data /mnt/windows/dati/
[aldo@localhost aldo]# cdrecord speed=6 dev=0,1,0 -v -multi -data /mnt/windows/dati/mp3/
aldo@localhost aldo]# cdrecord speed=6 dev=0,1,0 -fix
Per creare un CD audio:
[aldo@localhost aldo]# cdrecord speed=6 dev=0,1,0 -v -audio /home/aldo/tu_scendi_dalle_stelle.wav /home/francesca/bianco_natale.wav
Per copiare un CD
[aldo@localhost aldo]# cdrdao copy --device 0,1,0 --driver generic-mmc --source-device 0,0,0 --source-driver generic-mmc