The Linux CD-ROM HOWTO
Jeff Tranter, tranter@pobox.com
v1.14, 24 marzo 1999
Questo documento descrive come installare, configurare e usare i let
tori CD-ROM sotto Linux. Contiene una lista dell'hardware supportato e
risponde a un gran numero di domande. L'intenzione è di portare i
nuovi utenti a risolvere i loro problemi velocemente e ridurre il
traffico nei news group Usenet e nelle mailing list.
1. Introduzione
Questo è il Linux CD-ROM HOWTO. È inteso come un riferimento veloce
che copra tutto ciò che ti serve sapere per installare e configurare
dell'hardware CD-ROM sotto Linux. È data risposta alla Frequently
Asked Questions (domande poste più di frequente, o FAQ), e sono dati
riferimenti a altre fonti di informazioni legate alle applicazioni per
CD-ROM e alle tecnologie relative ad essi.
1.1. Crediti
Molte di queste informazioni provengono dalla documentazione e dai
sorgenti forniti con il kernel di Linux, dalle FAQ dei newsgroup
Internet alt.cdrom e da utenti Linux.
Grazie al pacchetto SGML Tools, questo HOWTO è disponibile in svariati
formati, tutti generati da un comune file sorgente.
1.2. Nuove versioni di questo documento
Nuove versioni di questo documento saranno inviate periodicamente al
newsgroup comp.os.linux.answers. Saranno anche depositate su vari siti
FTP che permettono l'accesso anonimo che archiviano tali informazioni,
compreso .
Le versioni ipertestuali di questo e altri HOWTO di Linux sono
disponibili su molti siti world-wide web, compreso
. Molte distribuzioni su CD-ROM
includono gli HOWTO, spesso nella directory /usr/doc, e puoi anche
acquistarne versioni cartacee da molti editori. Qualche volta gli
HOWTO reperibili in questi modi non sono aggiornati. Se la data di
questo HOWTO è di più di sei mesi fa, allora probabilmente è
disponibile una nuova copia su Internet.
Prego notare che, a causa della natura dinamica di Internet, tutti i
collegamenti web e ftp elencati in questo documento sono soggetti a
cambiamenti.
Questo HOWTO è stato tradotto in italiano da Germano Rizzo,
germano@geocities.com.
Traduzioni di questo documento sono disponibili in molte altre lingue:
Cinese:
Francese:
Giapponese:
Polacco:
Spagnolo:
Svedese:
La maggior parte delle traduzioni di questo e altri HOWTO di Linux
possono anche essere reperite a
e
.
1.3. Commenti e critiche
Faccio affidamento su di te, lettore, per rendere questo HOWTO quanto
più utile possibile. Se hai qualsiasi suggerimento, correzione, o
commento, per favore mandalo a me, tranter@pobox.com, e proverò ad
incorporarlo nella prossima revisione.
Ho anche intenzione di rispondere a questioni generiche sui CD-ROM
sotto Linux meglio che posso. Prima di fare ciò, per favore leggi
tutte le informazioni in questo HOWTO, e poi spediscimi informazioni
dettagliate sul problema. Per favore, non chiedermi alcunché sull'uso
di drive CD-ROM sotto sistemi operativi diversi da Linux.
Se pubblichi questo documento su un CD-ROM o in forma cartacea,
apprezzerei una copia omaggio; scrivimi per avere il mio indirizzo di
posta ordinaria. Considera anche la possibilità di fare una donazione
al Linux Documentation Project per aiutare a supportare la
documentazione gratuita e libera per Linux. Contatta il coordinatore
dei Linux HOWTO, Tim Bynum (linux-howto@metalab.unc.edu), per maggiori
informazioni.
1.4. Modalità di distribuzione
Copyright (c) 1995-1999 di Jeff Tranter. Questo documento può essere
distribuito nei termini stabiliti nella licenza LDP in
.
2. La tecnologia CD-ROM
"Il CD-ROM è un dispositivo di memorizzazione a sola lettura, e il
sistema dei compact disc audio è disponibile come un pacchetto di
media per dati digitali a quello scopo. Per suonare CD audio, prego
inserire lo spinotto delle cuffie."
--- da un manuale di istruzioni di un CD-ROM
Non farti prendere dal panico! Il mondo della tecnologia CD-ROM non è
caotico come il tuo manuale di istruzioni.
CD-ROM sta per Compact Disc Read-Only Memory (memoria a sola lettura
basata su compact disc), un dispositivo di memorizzazione di massa che
utilizza un laser ottico per leggere avvallamenti microscopici sullo
strato metallizzato di un disco di policarbonato. Lo stesso formato è
utilizzato per i Compact Disc Audio. Grazie all'elevata capacità di
memorizzazione, all'affidabilità ed al basso costo, il CD-ROM sta
diventando un dispositivo dalla popolarità sempre maggiore.
La capacità di memorizzazione di un disco CD-ROM è di circa 650
megabyte, equivalente a più di 500 dischetti da 3,5" ad alta densità o
approssimativamente a 250000 pagine scritte.
I drive di prima generazione (conosciuti come a singola velocità),
fornivano un transfer rate (velocità di trasferimento) di circa 150
kilobyte per secondo. I fabbricanti di hardware poi introdussero la
doppia velocità (300 kB/sec), la quadrupla (600 kB/sec), e così via. I
drive odierni possono operare a velocità fino a 40 volte la singola,
sebbene la massima velocità possa essere raggiunta solo in certe
porzioni della superficie del disco.
La maggior parte dei drive CD-ROM usano come interfaccia o la SCSI
(Small Computer Systems Interface), o l'ATAPI enhanced IDE, oppure
un'interfaccia proprietaria del produttore. Tipicamente, supportano la
riproduzione di CD audio per mezzo di una presa per cuffie o
dell'output di linea. Alcuni CD permettono anche di leggere i
pacchetti di dati dai CD audio in forma digitale.
I CD-ROM sono solitamente formattati con il filesystem ISO-9660
(conosciuto in passato come High Sierra). Questo formato pone
restrizioni sui nomi dei file, limitandoli allo standard MS-DOS (8+3
caratteri). Le estensioni Rock Ridge usano campi non definiti
dall'ISO-9660 per supportare nomi dei file più lunghi e informazioni
addizionali proprie di UNIX (ad es., proprietà e permessi dei file,
link simbolici, ecc.). Microsoft ha definito delle estensioni
proprietarie per il filesystem ISO chiamate Joliet che supportano nomi
lunghi usando la codifica di caratteri UNICODE 16-bit.
Il PhotoCD è uno standard sviluppato da Kodak per archiviare immagini
fotografiche come dati digitali su CD-ROM. Con del software
appropriato, puoi vedere le immagini sul computer, manipolarle, o
inviarle a una stampante. Altre informazioni possono essere aggiunte
in un secondo momento; questa caratteristica è conosciuta come multi-
sessione.
I registratori CD (CD-R, comunemente detti masterizzatori) permettono
la scrittura su speciali CD "gold" che possono poi essere letti da
qualsiasi drive CD-ROM. I dati possono essere scritti una sola volta,
anche se usando la multi-sessione nuovi dati possono essere aggiunti
al disco. Questi drive stanno diventando sempre più accessibili a
tutti.
I drive CD-RW (read/write, lettura e scrittura) supportano CD che
possono essere registrati più volte. Sono dischi speciali che non
possono essere letti dai drive CD-ROM più vecchi, anche se i drive CD-
RW stessi possono leggere CD normali.
I DVD-ROM espandono la capacità di immagazzinamento di un CD fino a 17
gigabyte. Sono comunemente usati come supporto per distribuire film
completi compressi usando il formato MPEG-2. La decompressione MPEG
avviene di solito usando hardware video dedicato.
3. Hardware supportato
Questa sezione elenca i drive CD-ROM e le loro interfacce attualmente
supportate da Linux. Le informazioni qui riportate sono basate sul più
recente kernel di Linux stabile, che al momento di scrivere era la
versione 2.2.4.
Inoltre, queste informazioni sono valide solo per Linux su piattaforme
Intel; la maggior parte di esse sono tuttavia valide anche per altre
architetture.
3.1. Drive CD-ROM ATAPI
ATAPI (ATA Packet Interface) è un protocollo per controllare
dispositivi di memorizzazione di massa. È costruito sull'interfaccia
ATA (AT Attachment), il nome ufficiale standard ANSI per l'interfaccia
IDE, sviluppata per gli hard disk. ATAPI è comunemente usata per hard
disk, drive CD-ROM, dispositivi a nastro, ed altri dispositivi.
Attualmente il tipo più popolare di interfaccia, offre molte delle
funzionalità della SCSI, senza il bisogno di costosi controller o
cavi.
Il kernel di Linux ha un driver di dispositivo che dovrebbe funzionare
per ogni CD-ROM ATAPI. Alcune case che producono drive compatibili
sono Aztech, Mitsumi, NEC, Sony, Creative Labs e Vertos. Se hai
acquistato di recente un drive CD-ROM, specialmente se a quadrupla
velocità o superiore, è quasi sicuro che sia IDE/ATAPI o SCSI.
Linux ha anche una modalità IDE SCSI emulation (emulazione IDE
dell'interfaccia SCSI) nel kernel che fa apparire al software un
dispositivo IDE/ATAPI come fosse SCSI, permettendo di usare un driver
di dispositivo SCSI al posto dell'originale driver ATAPI. Questo è
utile se hai un dispositivo ATAPI per il quale non è stato scritto
alcun driver dedicato (per esempio, un PC-CD ATAPI o un drive CDR); in
seguito puoi quindi usare questa emulazione assieme a un appropriato
driver di dispositivo SCSI.
3.2. Drive CD-ROM SCSI
SCSI (Small Computer Systems Interface) è un formato popolare per i
drive CD-ROM. I suoi principali vantaggi sono un transfer rate
ragionevolmente alto, la possibilità di collegare più dispositivi e il
supporto di svariate architetture di computer. Alcuni svantaggi sono
legati alla necessità di schede controller e di cavi relativamente
costosi.
Qualsiasi drive CD-ROM SCSI con dimensioni dei blocchi di 512 o 2048
byte dovrebbe funzionare sotto Linux; questi includono la stragrande
maggioranza di drive CD-ROM sul mercato.
Avrai anche bisogno di una scheda controller SCSI supportata; vedi lo
SCSI HOWTO per maggiori informazioni sulle interfacce hardware.
Nota che alcuni CD-ROM comprendono un controller SCSI proprietario con
un'interfaccia modificata non pienamente compatibile con lo standard
SCSI (per es., potrebbe non supportare l'aggiunta di ulteriori
dispositivi sul bus). Questi, con ogni probabilità, non funzioneranno
sotto Linux.
3.3. Drive CD-ROM con interfacce proprietarie
Sono disponibili molti drive CD-ROM che usano interfacce proprietarie;
l'interfaccia è spesso fornita su di una scheda audio. Sono anche
disponibili semplici schede d'interfaccia equivalenti a quelle fornite
sulle schede audio. Questi drive generalmente tendono ad essere meno
costosi e ingombranti dei drive SCSI. I loro svantaggi stanno nella
mancanza di standard fissi e di espandibilità.
Nota che spesso ci si riferisce erroneamente alle interfacce
proprietarie come interfacce IDE, perché come gli hard disk IDE, usano
un'interfaccia semplice basata sul bus PC/AT. Per aggiungere
confusione alla confusione, alcuni produttori, tra cui è più evidente
Creative Labs, producono molti tipi diversi di drive CD-ROM e offrono
interfacce SCSI, ATAPI e proprietarie sulle loro schede audio.
La tabella qui sotto elenca i drive CD-ROM con interfaccia
proprietaria che sono supportati da Linux. Driver per ulteriori
dispositivi possono essere disponibili nei più recenti kernel di
sviluppo o come patch per il kernel. Questi ultimi possono essere
spesso reperiti su
. Leggiti anche
i file di documentazione inclusi nella distribuzione del kernel, di
solito installati in /usr/src/linux/Documentation/cdrom, per avere le
informazioni più aggiornate.
Drive CD-ROM con interfacce proprietarie
Produttore Modello Driver Kernel Note
------ ----- ------------- --------
Panasonic CR-521 sbpcd Nota 1
Panasonic CR-522 sbpcd Nota 1
Panasonic CR-523 sbpcd Nota 1
Panasonic CR-562 sbpcd Nota 1
Panasonic CR-563 sbpcd Nota 1
Creative Labs CD-200 sbpcd
IBM ISA Esterno sbpcd Nota 2
Longshine LCS-7260 sbpcd
Teac CD-55A sbpcd
Sony CDU-31A cdu31a
Sony CDU-33A cdu31a
Sony CDU-535 sonycd535 Nota 3
Sony CDU-531 sonycd535
Aztech CDA268-01A aztcd Nota 4
Orchid CDS-3110 aztcd
Okano/Wearnes CDD110 aztcd
Conrad TXC aztcd
CyCDROM CR520ie aztcd
CyCDROM CR940ie aztcd
GoldStar R420 gscd Nota 5
Philips/LMS CM206 cm206 Nota 6
Mitsumi CRMC LU005S mcd/mcdx Nota 7, 8
Mitsumi FX001 mcd/mcdx Nota 7, 8
Optics Storage Dolphin 8000AT optcd
Lasermate CR328A optcd
Sanyo H94A sjcd
vari vari isp16 Nota 9
Note:
1. Questi drive possono essere venduti sotto i nomi Creative Labs,
Panasonic, Matsushita o Kotobuki.
2. Questo drive ha la stessa meccanica interna del Panasonic CR-562.
3. Venduto anche sotto il nome di Procomm.
4. Questo driver è solo per il CDA268-01A. Altri modelli, inclusi il
CDA268-03I e il CDA269-031SE, non hanno bisogno di interfaccia
proprietaria e dovrebbero usare il driver IDECD (ATAPI) del kernel.
5. Può anche essere venduto come parte del Reveal Multimedia Kit.
6. Il Philips CM205 non è supportato da questo driver, ma c'è un
driver in fase alpha separato disponibile su ftp://metalab.unc.edu
in /pub/Linux/kernel/patches/cdrom/lmscd0.4.tar.gz
7. Può anche essere venduto sotto il nome di Radio Shack.
8. Ci sono due driver disponibili. "mcd" è quello originale, e "mcdx"
è un driver nuovo con più caratteristiche supportate (ma forse meno
stabile).
9. Questo driver funziona con i drive CD-ROM collegati all'interfaccia
presente sulle schede audio ISP16, MAD16 or Mozart.
Se un drive elencato non è supportato dal tuo kernel, probabilmente
avrai bisogno di aggiornare quest'ultimo ad una nuova versione.
Se il tuo drive non è uno dei modelli elencati, particolarmente se è
stato acquistato di recente, o se è a quadrupla velocità o superiore,
probabilmente usa l'interfaccia IDE/ATAPI descritta in una precedente
sezione. L'errore più comune tra gli utilizzatori di CD-ROM sotto
Linux è quello di credere che qualsiasi drive connesso ad una scheda
SoundBlaster usi per forza il driver SBPCD. Creative Labs e la maggior
parte degli altri produttori non vendono più drive con interfacce
proprietarie, seguono piuttosto l'interfaccia IDE/ATAPI standard.
3.4. Drive su porta parallela
Ci sono dispositivi di memorizzazione esterni, inclusi drive CD-ROM,
che sono connessi alla porta parallela dei personal computer. In molti
casi il dispositivo internamente usa un'interfaccia IDE unita ad un
adattatore che interfaccia il bus interno IDE alla porta parallela del
PC.
Linux ha un driver IDE per la porta parallela che supporta la maggior
parte dei dispositivi per questa presa. Attualmente, supporta
dispositivi dei seguenti produttori (ma anche molti dispositivi 'senza
marca' e cloni compatibili coi seguenti): ATEN, Avatar, DataStor,
Fidelity International Technology, Freecom, Hewlett-Packard, Imation,
KT Technology, KingByte Information Corp., Maxell, MicroSolutions,
OnSpec, Shuttle Technology, SyQuest e ValuStore.
Informazioni aggiuntive possono essere ottenute su
.
3.5. Driver alternativi
C'è un driver del kernel alternativo disponibile per i drive
Panasonic/Matsushita CR-56x scritto da Zoltan Vorosbaranyi. Può essere
scaricato da .
4. Installazione
L'installazione di un CD-ROM sotto Linux si compone dei seguenti
passi:
1. Installare l'hardware
2. Configurare e compilare il kernel di Linux
3. Creare i file di dispositivo e impostare i parametri del boot
4. Avviare il kernel
5. Montare il dispositivo
La prossima sezione coprirà ognuno di questi punti in dettaglio.
4.1. Installare l'hardware
Segui le istruzioni del produttore per installare l'hardware o fallo
fare al tuo rivenditore. I dettagli varieranno a seconda che il drive
sia esterno o interno ed in base del tipo dell'interfaccia utilizzata.
Non ci sono requisiti di installazione particolari per Linux. Potrai
aver bisogno di regolare i jumper (ponticelli) sul drive o sulla
scheda d'interfaccia per un corretto funzionamento; alcuni driver del
kernel includono file di documentazione che forniscono queste
informazioni.
Come spiegato nel file ide-cd, i CD-ROM ATAPI dovrebbero essere
impostati come "single" o "master", e non "slave" quando c'è solo un
dispositivo attaccato all'interfaccia (sebbene questa restrizione non
sia più posta dai più recenti kernel).
4.2. Configurare e compilare il kernel di Linux
Se stai installando da zero Linux da CD-ROM probabilmente starai
usando un disco di boot e/o root fornito come parte della
distribuzione Linux. Se possibile, dovresti usare un disco di boot con
i driver del kernel propri del tuo drive CD-ROM. Se non puoi trovare
un disco di boot con i driver CD-ROM necessari, hai parecchie strade
per risolvere il problema:
1. Fai il boot direttamente dal CD-ROM (se supportato dal PC e dal CD
di Linux)
2. Installa direttamente dalla rete
3. Avvia DOS, e installa i file di Linux sul tuo hard disk
4. Avvia DOS, e crea un insieme di dischetti da cui installare Linux
5. Trova qualcuno che ti possa fare un disco di boot con i driver
richiesti
Il Linux Installation HOWTO
contiene
ulteriori informazioni sull'installazione di Linux. Se hai acquistato
Linux su CD-ROM, probabilmente troverai allegate delle istruzioni di
installazione (quel piccolo libretto nella custodia del CD, o qualche
file sul CD stesso).
Una volta che Linux è stato installato, la maggior parte degli utenti
vorranno compilare il loro kernel personalizzato, di solito per uno di
questi motivi:
· per supportare un drive CD-ROM o un altro dispositivo
· per aggiornarsi a una nuova versione del kernel
· per liberare risorse di memoria minimizzando la dimensione del
kernel
Dovresti dare un'occhiata al Linux Kernel HOWTO
per avere
maggiori dettagli sulla compilazione del kernel. Menzionerò solo
alcuni particolari specifici per i drive CD-ROM.
Ovviamente, avrai bisogno di attivare il supporto per il tuo drive CD-
ROM quando lanci un "make config".
Se hai un drive CD-ROM ATAPI, dovrai rispondere yes (sì) alle domande:
Enhanced IDE/MFM/RLL disk/cdrom/tape support (CONFIG_BLK_DEV_IDE) [Y/n/?]
Include IDE/ATAPI CDROM support (CONFIG_BLK_DEV_IDECD) [Y/n/?]
Per drive CD-ROM SCSI, abilita queste opzioni:
SCSI support (CONFIG_SCSI) [Y/n/m/?]
SCSI CDROM support (CONFIG_BLK_DEV_SR) [Y/n/m/?]
Abilita anche il supporto per il tuo adattatore SCSI quando te ne
viene data la possibilità, ad esempio:
Adaptec AHA152X/2825 support (CONFIG_SCSI_AHA152X) [Y/n/m/?]
Per drive CD-ROM con interfaccia proprietaria, abilita il driver
appropriato. Puoi usare la tabella di prima per determinare il driver
da usare per il tuo modello.
Virtualmente tutti i CD-ROM usano il file system ISO-9660, perciò devi
anche abilitare:
ISO 9660 CDROM filesystem support (CONFIG_ISO9660_FS) [Y/n/m/?]
Sebbene non sia richiesto per far funzionare il CD-ROM, se hai una
scheda audio supportata da Linux a questo punto potresti anche voler
abilitare e configurare il driver del kernel per il supporto audio. Il
Sound HOWTO può
essere un riferimento valido.
Devi quindi seguire la procedura normale per compilare il kernel ed
installarlo. Non fare il boot del nuovo kernel finché non crei tutti i
file di dispositivo richiesti e non imposti i parametri di boot come
descritto nella prossima sezione.
Il filesystem ISO-9660 e quasi tutti i driver CD-ROM possono essere
compilati come moduli del kernel caricabili. Questa modalità permette
ai driver del kernel di essere caricati e scaricati senza riavviare il
kernel, liberando memoria. Raccomando di avviare l'installazione del
CD-ROM dapprima usando driver compilati all'interno del kernel. Nella
documentazione dei moduli e nel Kernel HOWTO
puoi trovare
descritto come usare i moduli.
Se un drive elencato non è supportato dal tuo kernel, probabilmente
avrai bisogno di aggiornare quest'ultimo ad una nuova versione.
È possibile che ti serva usare un driver che è distribuito
separatamente dai sorgenti del kernel. Di nuovo, il Kernel HOWTO
spiega come
farlo.
Nota che c'è una modalità di configurazione del kernel basata su menù,
invocata da "make menuconfig" e una configurazione grafica basata su
X11 invocata da "make xconfig". Tutt'e tre i metodi di configurazione
offrono l'aiuto in linea.
4.3. Creare i file di dispositivo e impostare i parametri del boot
Il kernel usa i file di dispositivo (device file) per identificare
quale driver di dispositivo (device driver) usare. Se stai avviando
una distribuzione Linux standard, puoi aver già creato i file
necessari durante l'installazione. Nella Slackware, per esempio, c'è
uno strumento di setup basato su menù che comprende l'impostazione del
CD-ROM, e la maggior parte dei sistemi hanno uno script /dev/MAKEDEV.
Se non usi uno di questi metodi, raccomando almeno di verificare i
file di dispositivo rispetto alle informazioni di questa sezione.
Puoi creare i file di dispositivo avviando i comandi di shell indicati
per il tuo tipo di drive. Questo dovrebbe essere fatto come utente
root. Nota che alcune distribuzioni Linux possono usare nomi di
dispositivi CD-ROM leggermente diversi da quelli elencati qui.
È raccomandabile anche che tu crei un link simbolico al dispositivo
CD-ROM per renderlo più facile da ricordare. Per esempio, per un drive
CD-ROM IDE che è il dispositivo secondario sull'interfaccia
secondaria, il link potrebbe essere creato usando
# ln -s /dev/hdd /dev/cdrom
Se vuoi riprodurre CD audio, dovrai impostare la protezione sul file
di dispositivo (il file vero, non il link simbolico ad esso) per
permettere a tutti gli utenti di leggerlo, ad es.
# chmod 664 /dev/hdd
# ls -l /dev/hdd
brw-rw-r-- 1 root disk 22, 64 Feb 4 1995 /dev/hdd
Quando avvii linux, i driver di dispositivo tentano di determinare se
sono presenti i dispositivi appropriati, tipicamente provando
indirizzi specifici. Molti dei driver provano automaticamente su molti
indirizzi, ma a causa delle differenze nella configurazione, di
possibili conflitti, o di limitazioni hardware, alcune volte
necessitano di aiuto per identificare gli indirizzi ed altri
parametri. La maggior parte supporta una opzione nella riga di comando
del kernel per ottenere queste informazioni. Questo può essere fatto
interattivamente, o, più comunemente, configurato nel tuo boot loader.
Con LILO, per esempio, dovresti aggiungere un comando append come il
seguente al tuo file /etc/lilo.conf:
append = "sbpcd=0x230,SoundBlaster"
Controlla la documentazione di LILO per maggiori informazioni.
Nella prossima sezione discuterò argomenti specifici per particolari
driver di dispositivo, inclusi file di dispositivo, parametri di boot,
e le caratteristiche supportate da quei driver. Probabilmente ti
servirà solo leggere la sezione specifica al tuo particolare tipo di
drive. I file di documentazione sono di solito rintracciabili nella
directory /usr/src/linux/Documentation/cdrom.
4.3.1. Il driver Sbpcd
Principale autore: Eberhard Moenkeberg (emoenke@gwdg.de)
Supporto Multi-sessione: sì (ma non tutti i drive)
Supporto per drive multipli: sì
Supporto per moduli caricabili: sì
Legge i frame audio: sì (ma solo CR-562, CR-563 e CD-200)
Auto-probing: yes
File di dispositivo: /dev/sbpcd, numero primario 25
File di configurazione: sbpcd.h
Opzioni di configurazione nel Kernel: Matsushita/Panasonic CDROM support?
File della documentazione: sbpcd
Questo driver accetta una linea di comando del kernel nella forma:
sbpcd=,
Dove il primo parametro è l'indirizzo base del dispositivo (ad es.
0x230), ed il secondo è uno tra "SoundBlaster", "LaserMate", o "SPEA".
Leggi il file sbpcd.h per suggerimenti su che tipo di interfaccia
utilizzare. L'uso di sbpcd=0 disabilita la prova automatica (auto-
probing), disabilitando il driver.
Il file di dispositivo può essere creato utilizzando:
# mknod /dev/sbpcd b 25 0
Sono supportati fino a quattro drive per controller. I successivi tre
driver sul primo controller useranno il numero secondario di
dispositivo da 1 a 3. Se hai più di un controller, aggiungi
dispositivi con numero primario 26, 27 e 28, fino ad un massimo di
quattro controller (questo fa 16 drive in totale; si spera siano
abbastanza per la maggior parte degli utenti :-).
Leggi il file sbpcd per maggiori informazioni su questo driver.
Se hai acquistato un drive CD-ROM di recente, non credere che se è
connesso ad una SoundBlaster debba per forza usare questo driver. La
maggior parte dei CD-ROM venduti dalla Creative Labs sono ora
EIDE/ATAPI.
4.3.2. Il driver Sonycdu535
Principale autore: Ken Pizzini (ken@halcyon.com)
Supporto Multi-sessione: no
Supporto per drive multipli: no
Supporto per moduli caricabili: sì
Legge i frame audio: no
Auto-probing: no
File di dispositivo: /dev/sonycd535, numero primario 24
File di configurazione: sonycd535.h
Opzioni di configurazione nel Kernel: Sony CDU535 CDROM support?
File della documentazione: sonycd535
Questo driver accetta una linea di comando del kernel nella forma:
sonycd535=
dove il parametro è l'indirizzo base del controller (ad es. 0x320). In
alternativa puoi impostare l'indirizzo nel file sonycd535.h e
compilarlo al suo interno.
Il file di dispositivo può essere creato utilizzando:
# mknod /dev/sonycd535 b 24 0
Alcune distribuzioni Linux usano /dev/sonycd per questi dispositivi.
Versioni più vecchie del driver usavano come numero primario 21;
assicurati che il tuo file di dispositivo sia corretto.
Questo driver era dapprima distribuito come una patch, ma ora è parte
del kernel standard. Leggi il file sonycd535 per maggiori informazioni
su questo driver.
4.3.3. Il driver Cdu31a
Principale autore: Corey Minyard (minyard@-rch.cirr.com)
Supporto Multi-sessione: sì
Supporto per drive multipli: no
Supporto per moduli caricabili: sì
Legge i frame audio: sì
Auto-probing: no
File di dispositivo: /dev/cdu31a, numero primario 15
File di configurazione: cdu31a.h
Opzioni di configurazione nel Kernel: Sony CDU31A/CDU33A CDROM support?
File della documentazione: cdu31a
Questo driver accetta una linea di comando del kernel nella forma:
cdu31a=,,PAS
Il primo numero è l'indirizzo I/O base della scheda (ad es. 0x340). Il
secondo è il numero di interrupt da usare (0 significa usare un I/O
gestito in polling). Il terzo parametro opzionale è "PAS" se il drive
è connesso ad una scheda audio Pro Audio Spectrum 16, altrimenti va
tralasciato.
Se il driver è caricato come modulo, usa un formato lievemente
diverso. Quando carichi il driver usando i comandi modprobe o insmod,
i parametri prendono la forma:
cdu31a_port= cdu31a_irq=
L'indirizzo I/O è richiesto, mentre il numero di interrupt è
opzionale.
Il file di dispositivo può essere creato utilizzando:
# mknod /dev/cdu31a b 15 0
Leggi il file cdu31a per maggiori informazioni su questo driver.
Leggi anche la pagina web scritta da Jeffrey Oxenreider
(zureal@infinet.com) che copre molti problemi comuni con questi drive.
Può essere trovata a
.
4.3.4. Il driver Aztcd
Principale autore: Werner Zimmermann (zimmerma@rz.fht-esslingen.de)
Supporto Multi-sessione: sì
Supporto per drive multipli: no
Supporto per moduli caricabili: sì
Legge i frame audio: no
Auto-probing: no
File di dispositivo: /dev/aztcd0, numero primario 29
File di configurazione: aztcd.h
Opzioni di configurazione nel Kernel: Aztech/Orchid/Okano/Wearnes (non IDE) CDROM support?
File della documentazione: aztcd
Questo driver accetta una linea di comando del kernel nella forma:
aztcd=
dove il parametro è l'indirizzo I/O base della scheda (ad es. 0x340).
Il file di dispositivo può essere creato utilizzando:
# mknod /dev/aztcd0 b 29 0
Nota che questo driver è solo per il CDA268-01A. Altri modelli,
compresi il CDA268-03I ed il CDA269-031SE non sono proprietari e usano
il driver IDECD (ATAPI) del kernel.
Vedi il file aztcd per maggiori informazioni su questo driver.
4.3.5. Il driver Gscd
Principale autore: Oliver Raupach (raupach@nwfs1.rz.fh-hannover.de)
Supporto Multi-sessione: no
Supporto per drive multipli: no
Supporto per moduli caricabili: sì
Legge i frame audio: no
Auto-probing: no
File di dispositivo: /dev/gscd0, numero primario 16
File di configurazione: gscd.h
Opzioni di configurazione nel Kernel: Goldstar R420 CDROM support?
File della documentazione: gscd
Questo driver accetta una linea di comando del kernel nella forma:
gscd=
specificando l'indirizzo I/O base della scheda (ad es. 0x340).
Il file di dispositivo può essere creato utilizzando:
# mknod /dev/gscd0 b 16 0
Leggi il file gscd ed il sito web per maggiori informazioni su questo driver.
4.3.6. Il driver Mcd
Principale autore: Martin (martin@bdsi.com)
Supporto Multi-sessione: no
Supporto per drive multipli: no
Supporto per moduli caricabili: sì
Legge i frame audio: no
Auto-probing: no
File di dispositivo: /dev/mcd, numero primario 23
File di configurazione: mcd.h
Opzioni di configurazione nel Kernel: Standard Mitsumi CDROM support?
File della documentazione: mcd
Questo è il driver più vecchio di quelli Mitsumi; è stato disponibile
per un certo tempo. Potresti provare il più nuovo driver mcdx, che ha
alcune caratteristiche in più ma potrebbe essere meno stabile.
Questo driver accetta una linea di comando del kernel nella forma:
mcd=,
specificando l'indirizzo I/O base della sceda (ad es. 0x340) e il
numero di richiesta IRQ usato.
Il file di dispositivo può essere creato utilizzando:
# mknod /dev/mcd b 23 0
Vedi il file mcd per maggiori informazioni su questo driver.
4.3.7. Il driver Mcdx
Principale autore: Heiko Schlittermann
Supporto Multi-sessione: sì
Supporto per drive multipli: sì
Supporto per moduli caricabili: sì
Legge i frame audio: no (non supportato dall'hardware)
Auto-probing: no
File di dispositivo: /dev/mcdx0, numero primario 20
File di configurazione: mcdx.h
Opzioni di configurazione nel Kernel: Experimental Mitsumi support?
File della documentazione: mcdx
Questo è un driver nuovo per i drive Mitsumi. Il più vecchio e forse
più stabile driver mcd è ancora disponibile.
Questo driver accetta una linea di comando del kernel nella forma:
mcdx=,
specificando l'indirizzo base I/O della scheda (ad es. 0x340) e il
numero di richiesta IRQ usato.
Il file di dispositivo può essere creato utilizzando:
# mknod /dev/mcdx0 b 20 0
Se hai di recente acquistato un drive CD-ROM Mitsumi, non dare per
scontato che usi questi driver. I nuovi driver Mitsumi sono ora
compatibili EIDE/ATAPI e usano il driver idecd del kernel.
Vedi il file mcdx per maggiori informazioni su questo driver.
4.3.8. Il driver Cm206
Principale autore: David A. van Leeuwen (david@tm.tno.)
Supporto Multi-sessione: sì
Supporto per drive multipli: no
Supporto per moduli caricabili: sì
Legge i frame audio: no
Auto-probing: sì
File di dispositivo: /dev/cm206cd, numero primario 32
File di configurazione: cm206.h
Opzioni di configurazione nel Kernel: Philips/LMS CM206 CDROM support?
File della documentazione: cm206
Questo driver accetta una linea di comando del kernel nella forma:
cm206=,
ove il primo numero è l'indirizzo base I/O della scheda (per es.
0x340). Il secondo è il canale d'interrupt.
Il file di dispositivo può essere creato utilizzando:
# mknod /dev/cm206cd b 32 0
Consulta il file cm206 per maggiori informazioni su questo driver.
4.3.9. Il driver Optcd
Principale autore: Leo Spiekman (spiekman@dutette.et.tudelft.nl)
Supporto Multi-sessione: sì
Supporto per drive multipli: no
Supporto per moduli caricabili: sì
Legge i frame audio: no
Auto-probing: no
File di dispositivo: /dev/optcd0, numero primario 17
File di configurazione: optcd.h
Opzioni di configurazione nel Kernel: Experimental Optics Storage ... CDROM support?
File della documentazione: optcd
Questo driver accetta una linea di comando del kernel nella forma:
optcd=
per fornire l'indirizzo I/O base della scheda (ad es. 0x340).
Il file di dispositivo può essere creato utilizzando:
# mknod /dev/optcd0 b 17 0
Vedi il file optcd per maggiori informazioni su questo driver.
4.3.10. Il driver Sjcd
Principale autore: Vadim V. Model (vadim@rbrf.msk.su)
Supporto Multi-sessione: no
Supporto per drive multipli: no
Supporto per moduli caricabili: sì
Legge i frame audio: no
Auto-probing: no
File di dispositivo: /dev/sjcd, numero primario 18
File di configurazione: sjcd.h
Opzioni di configurazione nel Kernel: Experimental Sanyo H94A CDROM support?
File della documentazione: sjcd
Questo driver accetta una linea di comando del kernel nella forma:
sjcd=,,
indicando l'indirizzo base, l'interrupt ed il canale DMA da usare (ad
es. sjcd=0x340,10,5).
Il file di dispositivo può essere creato utilizzando:
# mknod /dev/sjcd b 18 0
Consulta il file sjcd per maggiori informazioni su questo driver.
4.3.11. Il driver Paride
Principale autore: Grant R. Guenther (grant@torque.net)
Supporto Multi-sessione: no
Supporto per drive multipli: sì
Supporto per moduli caricabili: sì
Legge i frame audio: no
Auto-probing: sì
File di dispositivo: /dev/pcd0, numero primario 46
File di configurazione: bpcd.h
Opzioni di configurazione nel Kernel: Parallel port IDE device support?
File della documentazione: paride.txt
Questo è un driver per vari tipi di dispositivi di memorizzazione che
si collegano alla porta parallela. Normalmente il driver riconoscerà
automaticamente il dispositivo per porta parallela. La documentazione
descrive i parametri da usare nel caso il riconoscimento automatico
fallisca.
Il file di dispositivo può essere creato utilizzando:
# mknod /dev/pcd0 b 46 0
Vedi il file /usr/src/linux/Documentation/paride.txt per maggiori
informazioni su questo driver. Nota che questo sostituisce il vecchio
driver bpcd che era presente nei vecchi kernel.
4.3.12. Il driver SCSI
Principale autore: David Giller
Supporto Multi-sessione: sì (dipende dal drive)
Supporto per drive multipli: sì
Supporto per moduli caricabili: sì
Legge i frame audio: no
Auto-probing: sì
File di dispositivo: /dev/scd0, numero primario 11
File di configurazione: cdrom.h
Opzioni di configurazione nel Kernel: SCSI CDROM support?
File della documentazione: scsi.txt
Ci sono opzioni da riga di comando del kernel specifiche per ogni tipo
di controller SCSI. Vedi lo SCSI HOWTO per maggiori informazioni.
Sono supportati drive multipli (fino al limite del numero massimo di
dispositivi sul bus SCSI). Crea i file di dispositivo con il numero
primario impostato a 11 ed il secondario a partire da zero:
# mknod /dev/scd0 b 11 0
# mknod /dev/scd1 b 11 1
Mentre il driver del kernel in sè e per sè non supporta la lettura di
audio digitale, alcuni drive SCSI ne hanno la possibilità e
funzioneranno con programmi come cdda2wav (che usano l'interfaccia
generica SCSI del kernel).
Vedi anche la disamina dell'emulatore SCSI per IDE più sopra in questo
documento.
4.3.13. Il driverIDECD
Principale autore: Scott Snyder (snyder@fnald0.fnal.gov)
Supporto Multi-sessione: sì
Supporto per drive multipli: sì
Supporto per moduli caricabili: no
Legge i frame audio: sì (sui drive che supportino tale funzione)
Auto-probing: sì
File di dispositivo: /dev/hd{a,b,c,d}, numero primario 22
File di configurazione: cdrom.h
Opzioni di configurazione nel Kernel: Include support for IDE/ATAPI CDROMs?
File della documentazione: ide-cdgscd
Questo è il driver per i CD-ROM ATAPI. Accetta una linea di comando
del kernel nella forma:
hdx=cyls,heads,sects,wpcom,irq
o
hdx=cdrom
dove hdx può essere uno tra {hda,hdb,hdc,hdd}, o semplicemente hd, per
il drive "successivo" nella sequenza. Solo i primi tre parametri sono
richiesti (cyls,heads,sects). Per esempio, hdc=1050,32,64 hdd=cdrom.
Convincere il driver IDE a riconoscere il tuo CD-ROM può essere
difficoltoso, specialmente se hai più di due dispositivi su più di un
controller. Di solito tutto ciò che serve è passare le giuste opzioni
da riga di comando usando LILO. Il file
/usr/src/linux/Documentation/cdrom/ide-cd spiega come fare. Leggilo
con attenzione.
I kernel di Linux più recenti hanno un migliore supporto per
dispositivi IDE multipli. Se hai problemi con un vecchio kernel,
aggiornarlo può aiutare.
Alcuni controller IDE hanno problemi hardware che il driver del kernel
può aggirare. Puoi aver bisogno di passare parametri addizionali al
driver per abilitare queste modalità. Vedi la documentazione per
dettagli maggiori.
4.4. Avviare il kernel
Adesso puoi riavviare col nuovo kernel. Controlla i messaggi di boot
cercandone uno come il seguente, che indica che il CD-ROM è stato
trovato dal driver (il messaggio varierà a seconda del tipo di drive):
hdd: NEC CD-ROM DRIVE:282, ATAPI CDROM drive
Se i messaggi passano troppo veloci per essere letti, puoi riguardarli
usando dmesg o tail /var/log/messages.
Se il drive non è trovato, c'è un problema. Consulta la sezione sulla
risoluzione di problemi.
4.5. Montare il dispositivo
Per montare (mount) un CD-ROM, inserite un disco nel drive, e avviate
il comando mount come root (l'esempio seguente dà per scontato che tu
abbia creato un link simbolico al file di dispositivo come descritto
prima e che esista una directory vuota /mnt/cdrom):
# mount -t iso9660 -r /dev/cdrom /mnt/cdrom
Si può ora accedere al CD nella cartella /mnt/cdrom.
Ci sono altre opzioni per il comando mount che puoi aver bisogno di
usare; vedi la pagina man mount(8) per maggiori dettagli.
Puoi aggiungere una voce a /etc/fstab per montare automaticamente un
CD-ROM al boot o per specificare i parametri da usare quando viene
montato; consulta la pagina man fstab(5).
Nota che per riprodurre CD audio non devi montarli.
Per smontare (unmount) un CD-ROM, usa il comando umount come root:
# umount /mnt/cdrom
Il disco può essere smontato solo se nessun processo sta attualmente
accedendo al drive (incluso se hanno le loro directory di default
settate sul drive stesso). Puoi quindi espellere il disco. La maggior
parte dei drive hanno un bottone di espulsione; c'è anche un programma
eject che permette di espellere il CD-ROM via software.
Nota che non dovresti espellere un disco mentre è montato (questo può
essere possibile o no a seconda del tipo di drive). Alcuni CD-ROM
possono automaticamente espellere un CD-ROM quando viene smontato e
caricare il carrello quando viene montato (puoi disabilitare questa
funzione compilando il kernel o usando un comando software).
È possibile che dopo aver riprodotto un CD audio tu non sia più in
grado di montare un CD-ROM. Devi allora mandare un comando CD audio
"STOP" (usando un programma per la riproduzione di CD) prima di
riprovare a montare. Questo problema sembra solo accadere col driver
SBPCD.
I kernel più recenti supportano un automounter basato sul kernel che
fornisce un montaggio trasparente all'utente di media rimovibili,
inclusi i CD-ROM. Puoi trovare gli strumenti che servono su
.
4.6. Risoluzione di problemi
Se ancora incontri problemi dopo aver seguito le istruzioni
nell'HOWTO, qui ci sono alcune cose che puoi controllare. I controlli
sono elencati in ordine crescente di complessità. Se un controllo non
dà esito positivo, risolvi il problema prima di passare al successivo.
4.6.1. Passo 1: Assicurati di stare realmente avviando il kernel che
hai compilato
Controlla la data del kernel per vedere se stai avviando quello che
hai compilato col supporto per CD-ROM. Puoi farlo col comando uname:
% uname -a
Linux fizzbin 2.2.4 #1 Tue Mar 232 11:23:21 EST 1999 i586 unknown
o visualizzando il file /proc/version:
% cat /proc/version
Linux version 2.2.4 (root@fizzbin) (gcc version 2.7.2.3) #1 Tue Mar 23 11:23:21 EST 1999
Se la data non corrisponde a quando hai compilato il kernel, stai
avviandone uno vecchio. Ti sei ricordato di riavviare? Se usi LILO,
l'hai reinstallato (tipicamente lanciando/sbin/lilo)? Se stai facendo
il boot da floppy, ne hai creato uno nuovo e lo stai usando?
4.6.2. Passo 2: Assicurati che i driver del kernel appropriati siano
compilati
Puoi verificare quali driver sono compilati nel kernel consultando
/proc/devices:
% cat /proc/devices
Character devices:
1 mem
2 pty
3 ttyp
4 ttyS
5 cua
7 vcs
Block devices:
3 ide0
22 ide1
Per prima cosa cerca il tuo driver di dispositivo CD-ROM. Quelli qui
sopra sono tutti dispositivi a blocchi, in questo caso possiamo vedere
che il driver idecd con numero primario 22 era presente.
Assicurati pure che il supporto per il filesystem ISO-9660 sia
compilato, guardando in /proc/filesystems:
% cat /proc/filesystems
ext2
nodev proc
nodev devpts
vfat
iso9660
Puoi anche vedere che indirizzi di porta i/o sono utilizzati da un
driver con il file /proc/ioports:
howto % cat /proc/ioports
...
0230-0233 : sbpcd
...
Se qualcuno dei driver che pensavi di aver compilato nel kernel non
sono visualizzati, allora qualcosa è andato storto al momento di
configurare o compilare il kernel. Ricomincia il processo di
installazione, cominciando dalla configurazione e compilazione del
kernel.
4.6.3. Passo 3: Il kernel ha trovato il drive al momento del boot?
Assicurati che il dispositivo CD-ROM sia stato trovato quando il
kernel si è avviato. Se i messaggi sono passati troppo velocemente,
puoi di solito richiamarli usando il comando dmesg:
% dmesg
o
% tail /var/log/messages
Se il driver non è stato trovato allora qualcosa è andato storto.
Assicurati che l'alimentazione sia collegata e che tutti i cavi siano
inseriti correttamente. Se il tuo drive ha jumper hardware per
l'indirizzamento, controlla che siano impostati correttamente (per es.
come drive 0 se hai un solo drive). I CD-ROM ATAPI devono essere
impostati come "single" o "master" e non come "slave" quando un solo
dispositivo è collegato ad una interfaccia. Se il drive funziona sotto
DOS allora puoi essere relativamente certo che l'hardware sia
impostato correttamente.
Molti driver del kernel usano l'auto-probing, ma alcuni no, e in ogni
caso la prova automatica non è sempre attendibile. Puoi aver bisogno
di provare numerosi differenti valori se non sei sicuro dell'indirizzo
di I/O o degli altri parametri. LILO può essere (e di solito lo è)
configurato per permetterti di inserire i parametri manualmente al
boot.
Un'altra possibilità è che tu abbia usato il driver del kernel
sbagliato per il tuo drive CD-ROM. Certa documentazione può riferirsi
a interfacce proprietarie come IDE, portando alcuni a credere,
sbagliando, di essere in possesso di drive ATAPI.
Un'altra possibilità è che il tuo drive (o scheda di interfaccia) sia
uno dei tipi 'compatibili' che richiedono inizializzazione dal driver
DOS. Prova ad avviare DOS e caricare il driver per DOS fornito dal
produttore. Poi riavvia Linux facendo un soft boot con Control-Alt-
Canc.
Se il tuo drive non è nominato in questo documento, è possibile che
non ci siano driver disponibili per esso sotto Linux. Puoi controllare
presso alcuni dei riferimenti elencati alla fine di questo documento
per avere assistenza.
4.6.4. Passo 4: Puoi leggere dati dal drive?
Prova a leggere dal drive CD-ROM. L'immissione dei seguenti comandi
dovrebbe provocare l'accensione della spia di attività (se presente) e
nessun errore dovrebbe essere riportato. Usa il file di dispositivo
appropriato per il tuo drive e assicurati che un CD-ROM sia inserito;
usa Control-C per uscire.
# dd if=/dev/cdrom of=/dev/null bs=2048
^C
124+0 records in
124+0 records out
Se questo funziona, allora il kernel comunica col drive e puoi passare
al punto 5.
Altrimenti, una possibile causa è il file di dispositivo. Assicurati
che il file nella directory /dev abbia i numeri primario e secondario
corretti come elencato prima per il tuo tipo di driver. Controlla che
i permessi per tale file ne permettano la lettura e scrittura.
Una possibilità remota è che tu abbia un problema hardware. Prova il
drive sotto un altro sistema operativo, se possibile, per determinare
se questo è il tuo caso.
4.6.5. Passo 5: Puoi montare il drive?
Se puoi leggere dal drive ma non montarlo, prima verifica di aver
compilato nel kernel il supporto per il filesystem ISO-9660 leggendo
/proc/filesystems, come descritto prima.
Assicurati di aver montato il drive con le opzioni "-t iso9660" e "-r"
e che nel lettore sia inserito un CD-ROM ISO9660 (non un audio CD) che
tu sappia valido. Normalmente devi montare i drive solo come utente
root.
Assicurati che il mount point esista e sia una directory vuota.
Se stai montando automaticamente il CD-ROM al boot, assicurati di
avere le voci corrette nel file /etc/fstab.
Se stai eseguendo il demone syslog, ci può essere un messaggio di
errore dal kernel che non riesci a vedere. Usa il comando "dmesg":
% dmesg
SBPCD: sbpcd_open: no disk in drive
Ci potrebbero anche essere messaggi di errore registrati in qualche
file in /var/log, a seconda di come è configurato il tuo sistema.
4.6.6. Fare il debug per problemi audio
Se il drive funziona coi CD-ROM, ma non riproduce CD audio, queste
possono essere alcune possibili soluzioni.
Ti serve un programma per riprodurre CD audio. Alcune applicazioni
possono essere difettose, o possono non essere compatibili col tuo
drive. Prova altre applicazioni e/o ricompilale tu stesso. Un buon
posto dove cercare software può essere
.
Pochi drive CD-ROM non supportano la riproduzione di CD audio.
Controlla i file di documentazione o i sorgenti per vedere se questo è
il tuo caso.
Controlla se l'audio può essere riprodotto mediante la presa per
cuffie sul frontalino del drive. Se è così, probabilmente il problema
è legato alla scheda audio. Usa un programma mixer per impostare il
dispositivo di input e i livelli di volume. Assicurati di aver
installato il cavo di collegamento dal drive CD-ROM alla scheda.
Assicurati anche che il driver del kernel per la scheda audio sia
installato e funzionante (vedi il Sound HOWTO).
4.6.7. Quando tutto il resto fallisce
Se hai ancora problemi, qui ci sono alcuni suggerimenti finali su
soluzioni che puoi ancora provare:
· Rileggi con attenzione questo HOWTO
· Leggi i riferimenti posti alla fine di questo documento,
specialmente i file sorgente del kernel rilevanti
· Invia via e-mail una domanda a uno tra comp.os.linux o altri
newsgroup usenet
· Invia una domanda a una mailing list di Linux
· Prova ad usare il kernel più recente
· Contatta il tuo rivenditore
· Contatta il produttore del drive CD-ROM
· Invia una e-mail al gestore del driver del kernel che ti interessa
(guarda nel file /usr/src/linux/MAINTAINERS)
· Spediscimi una e-mail
· Avvia emacs e digita Esc-x doctor :-)
5. Applicazioni
Questa sezione elenca brevemente alcune delle molte applicazioni
legate ai CD-ROM disponibili sotto Linux. Controlla la Linux Software
Map per le ultime versioni ed i siti dove procurarsele.
5.1. Riproduttori CD audio
Sono disponibili molti programmi per riprodurre CD audio, per mezzo
della presa per le cuffie o di una scheda audio collegata.
workman
Un riproduttore grafico che funziona sotto X11 e supporta un
database dei CD e molte altre caratteristiche.
workBone
Un riproduttore interattivo in modalità testo.
xcdplayer
Un semplice riproduttore basato su X11.
cdplayer
Un riproduttore molto semplice basato su linea di comando.
xmcd
Un riproduttore basato su X11/Motif.
xmitsumi
Un altro riproduttore basato su X11 per driver Mitsumi.
xplaycd
Un altro riproduttore basato su X11, con cui viene fornito un
mixer sonoro e un VU meter.
cdtool
Strumenti da linea di comando per riprodurre CD.
Alcune di queste applicazioni sono programmate usando uno specifico
file di dispositivo per il CD-ROM (ad es. /dev/cdrom). Potresti essere
in grado di passare il file corretto come parametro, o puoi creare un
link simbolico nella directory /dev. Se invii l'output del CD alla
scheda audio, potresti voler usare un programma mixer per regolare i
settaggi del volume o selezionare l'input CD-ROM per la registrazione.
5.2. PhotoCD
I PhotoCD usano un filesystem ISO-9660 che contiene file di immagini
in un formato proprietario. Non tutti i drive CD-ROM ne supportano la
lettura.
Il programma hpcdtoppm di Hadmut Danisch converte i file PhotoCD nel
portable pixmap format (PPM). Può essere ottenuto da
o come parte delle PBM
(portable bit map) utilities, disponibili su molti siti archivio
(cerca "pbm" o "netpbm").
Il programma photocd di Gerd Knorr (kraxel@cs.tu-berlin.de) può
convertire immagini PhotoCD in file Targa o Windows/OS2 bitmap.
Lo stesso autore ha scritto il programma xpcd, uno strumento basato su
X11 per gestire immagini PhotoCD. Puoi selezionare le immagini con un
mouse, visionare un'anteprima dell'immagine in una piccola finestra, e
caricare l'immagine in una delle cinque possibili risoluzioni. Puoi
anche selezionare una parte dell'immagine e caricare solo quella
parte. Cerca questi pacchetti su .
Anche il programma di manipolazione di immagini ImageMagick supporta i
file PhotoCD. È disponibile su
.
5.3. Mkisofs
Il pacchetto mkisofs di Eric Youngdale permette di creare un
filesystem ISO-9660 su una partizione di hard disk. Questa può poi
essere utilizzata per assisterti nella creazione e verifica del
filesystem per masterizzarlo su CD-R.
Gli strumenti per scrivere dati su drive CD-ROM registrabili tendono
ad essere specifici per ogni produttore. Essi richiedono inoltre di
scrivere i dati senza interruzioni, per cui un sistema operativo
multitasking come Linux non è propriamente indicato.
5.4. Le ISO-9660 Utilities
Ci sono alcune utilities per verificare il formato dei dischi
ISO-9660; puoi trovarle utili per controllare CD sospetti. Il
pacchetto può essere reperito su
. Sono stati scritti da
Bill Siegmund e Rich Morin.
6. Risposte alle domande più frequenti (FAQ)
6.1. Come fa un utente non-root a montare e smontare dischi?
La maggior parte dei comandi mount supportano l'opzione user. Se
aggiungi una voce come la seguente in /etc/fstab:
/dev/sbpcd /mnt/cdrom iso9660 user,noauto,ro
allora un utente normale sarà abilitato a montare e smontare il drive
con questi comandi:
% mount /mnt/cdrom
% umount /mnt/cdrom
Di default il disco sarà montato con alcune opzioni che aiutano ad
aumentare la sicurezza (ad es. i programmi non possono essere
eseguiti, i file di dispositivo sono ignorati). Se questo è troppo
restrittivo puoi usare opzioni addizionali (ad es. l'opzione "exec"
abiliterà l'esecuzione dei programmi). Controlla la pagina man
mount(8) per maggiori dettagli.
Un altro metodo è di procurarsi il pacchetto usermount che permette a
utenti non-root di montare e smontare dispositivi removibili come
floppy o CD-ROM, ma restringe l'accesso ad altri dispositivi (come le
partizioni di un hard disk). È disponibile sui maggiori siti archivio.
Il sito archivio ftp.cdrom.com contiene il file sorgente mount.c che
permette di montare/smontare (solo) CD-ROM come utente normale. Si
avvia come un eseguibile setuid.
6.2. Perché ottengo il messaggio 'device is busy' ('il dispositivo è
occupato') quando smonto un CD-ROM?
Il disco non può essere smontato se qualche processo sta accedendo al
drive. Questo comprende i processi che hanno la propria directory di
default impostata nel filesystem montato. Se non puoi identificare il
processo che usa il disco, puoi usare il comando fuser, come indicato
nell'esempio seguente.
% umount /cdrom
umount: /dev/hdd: device is busy
% fuser -v /cdrom
USER PID ACCESS COMMAND
/mnt/cdrom tranter 133 ..c.. bash
Su alcuni sistemi hai bisogno di essere root quando avvii il comando
fuser per vedere i processi degli altri utenti.
6.3. Come posso esportare un CD-ROM su altri host con NFS?
Dovrai aggiungere una voce nel file /etc/exports. Gli utenti su altre
macchine saranno quindi in grado di montare il drive. Vedi la pagina
man exports(5) per dettagli.
6.4. Posso fare il boot di Linux da CD-ROM?
Quando installi Linux da zero il metodo più comune è utilizzare un
disco di boot. Alcune distribuzioni permettono di avviare un kernel
Linux su CD direttamente da DOS.
Se possiedi un disco CD-ROM, il BIOS e il drive CD-ROM corretti, ossia
se sono tutti e tre predisposti, puoi fare il boot direttamente da CD.
L'ultima versione di mkisofs supporta la creazione di tali dischi
usando lo standard El Torito per CD avviabili.
6.5. Come posso leggere audio digitale da un CD audio?
Heiko Eissfeldt (heiko@colossus.escape.de) e Olaf Kindel hanno scritto
una utility che legge dati audio e li salva in file sonori in formato
.wav. Il pacchetto si chiama cdda2wav.tar.gz e può essere reperito su
metalab.unc.edu.
Un'altra utility per estrarre audio digitale è cdparanoia disponibile
a .
Poiché i drive CD-ROM cambiano molto velocemente, è difficile elencare
quali modelli supportino la lettura di dati digitali. La cosa migliore
che puoi fare è procurarti gli ultimi pacchetti di cdda2wav o
cdparanoia e leggerne la documentazione.
Per maggiori informazioni su questo argomento, vedi il sito web
http://www.tardis.ed.ac.uk/~psyche/cdda/ e le FAQ di alt.cd-rom
elencate nella sezione "riferimenti".
6.6. Perché il comando find non funziona correttamente?
Su dischi ISO-9660 senza le estensioni Rock Ridge, devi aggiungere
l'opzione -noleaf al comando find. Vedi la pagina man find(1) per
maggiori dettagli.
(Nella mia esperienza virtualmente tutti i recenti CD di Linux usano
le estensioni Rock Ridge, quindi questo problema dovrebbe presentarsi
molto raramente.)
6.7. Linux supporta drive CD-ROM registrabili?
Il pacchetto X-CD-Roast per Linux è un front-end grafico per usare
registratori di CD. Il pacchetto può essere reperito su
metalab.unc.edu in /pub/Linux/utils/disk-
management/xcdroast-0.95.tar.gz
Vedi anche il Linux CD-Writing HOWTO, che si trova su
o
.
6.8. Perché ottengo il messaggio 'mount: Read-only file system'
('filesystem a sola lettura') quando monto un CD-ROM?
Il CD-ROM è un media a sola lettura. Con alcuni kernel vecchi potevi
montare un CD-ROM in lettura/scrittura; i tentativi di scrivere dati
sul CD erano semplicemente ignorati. Dalla versione 1.1.33 questo è
stato corretto cosicché ora i CD-ROM possono essere montati in sola
lettura (ad es. usando l'opzione -r).
6.9. Perché il carrello del drive si apre quando chiudo il sistema?
Il driver sbpcd supporta l'espulsione automatica del CD quando viene
smontato. In alcuni vecchi kernel questo era il comportamento
predefinito. Se chiudi il sistema, un CD montato sarà smontato,
causando l'espulsione.
Questa caratteristica è inserita per facilitare il cambio dei dischi.
Se il carrello è aperto quando monti o leggi un CD, sarà
automaticamente chiuso.
Ho trovato che questo costituisce un problema per alcuni programmi (ad
es. cdplay e workbone). Dal kernel 1.1.60 puoi controllare questa
caratteristica via software. Un programma esempio è incluso nel file
di documentazione di sbpcd (o usa il programma eject). Puoi anche
controllare il comportamento predefinito modificando il file sorgente
del kernel sbpcd.h.
6.10. Ho un CD "speciale" che non riesco a montare
Tale CD "speciale" è probabilmente un disco XA (come tutti i PhotoCD o
uno eventualmente creato in questa modalità con un masterizzatore). La
maggior parte dei driver CD-ROM del kernel di Linux non supportano
dischi XA, sebbene tu possa trovare un patch per aggiungere questo
supporto in uno dei siti archivio.
Il driver sbpcd supporta l'XA. Se usi questo driver puoi vedere se un
disco è XA usando la seguente procedura: vai nel file sbpcd.c e
abilita la visualizzazione della "Table Of Contents" (Tabella del
contenuto o TOC, sotto DBG_TOC). Compila ed installa il nuovo kernel e
avvialo. Ogni volta che monti un disco, le informazioni sulla TOC
saranno stampate (o sulla console o in un file di log). Se il primo
valore visualizzato nell'header della TOC è "20", allora si tratta di
un disco XA. Quel byte è "00" nei dischi normali. Se la TOC mostra
diverse tracce, anche questo è un segnale che si tratta di un disco
XA.
(Grazie a Eberhard Moenkeberg per queste informazioni)
Altre possibilità per un CD illeggibile sono:
1. Il disco non usa un filesystem ISO-9660 (ad es. alcuni usano SunOS
o HFS)
2. È un CD audio
3. Il CD è danneggiato o difettoso
4. L'hai messo nel drive capovolto :-)
6.11. I drive CD-ROM multi-piastra funzionano con Linux?
Molti utenti hanno riportato successi con scambiatori di CD-ROM multi-
disco SCSI. Probabilmente avrai bisogno di abilitare la opzione di
configurazione del kernel "Probe all LUNs on each SCSI device" ("Prova
tutti i LUN su ogni dispositivo SCSI") (questo non è necessario se il
tuo scambiatore di CD è già noto al driver SCSI. Dai un'occhiata a
/usr/src/linux/drivers/scsi.c).
Almeno un utente ha anche dovuto aumentare il valore del timeout SCSI
nel driver del kernel. Un sintomo di questo è un messaggio di errore
del tipo "wrong fs type, bad option, bad superblock on /dev/sr5, or
too many mounted file systems" ("tipo sbagliato di filesystem, opzione
errata, superblock non valido su /dev/sr5, o troppi filesystem
montati") quando si prova a montare un CD-ROM per la prima volta,
mentre un secondo tentativo subito dopo ha successo. Per alzare il
timeout aumenta il valore di IOCTL_TIMEOUT all'inizio di
/usr/src/linux/drivers/scsi/sr_ioctl.c e ricompila il kernel. Mi si
dice che un valore di 10000 al posto del predefinito 3000 funziona col
NEC Multispin 4Xc.
Potrebbe essere necessario creare file speciali a blocchi in più,
cosicché tutti i LUN possano essere acceduti. È richiesto un file di
dispositivo per ogni LUN. Così, per uno scambiatore a 7 dischi, devono
essere presenti da /dev/sr0 a /dev/sr6 (di più se hai drive CD-ROM
SCSI in più). Per creare questi file speciali esegui mknod /dev/sr? b
11 ? come root dove ? sta per il numero richiesto.
Mi dicono che funzionano gli scambiatori Nakamichi MBR-7 7, NEC
Multispin 4Xc e Pioneer 12.
Sono pure disponibili scambiatori a più dischi EIDE/ATAPI. Il kernel
ha il supporto per alcuni drive usando la funzione CDROM_SELECT_DISC
di ioctl. Il file di documentazione del driver del kernel include i
sorgenti per un programma per selezionare gli alloggiamenti dello
scambiatore da attivare, o puoi usare varie utility come il programma
eject descritto più sopra.
6.12. Ricevo un messaggio di errore che dice "/cdrom: Permission
denied" ("/cdrom: permesso negato")
Alcuni CD hanno i permessi dei file della root directory impostati in
modo tale da permettere solo all'utente root di leggerli. Questo è un
errore da parte del produttore del CD e un reale inconveniente. Una
eventualità più comune è il fatto che alcuni file o directory non
siano leggibili da tutti. Alcune persone hanno creato un patch per i
loro kernel per aggirare il problema.
Vedi anche, a riguardo, la domanda sui file nascosti, più oltre in
questo documento.
6.13. Come posso interpretare i messaggi di errore del kernel per
l'IDE CD?
Cosa significa quando ricevo un messaggio dal driver IDE CD-ROM tipo
"hdxx: code: xx key: x asc: xx ascq: x"?
Questo è un messaggio di stato/errore dal drive IDE CD-ROM. Di
default, il driver IDECD visualizza le informazioni in forma criptica
al posto di sprecare spazio del kernel con messaggi di errore. Puoi
cambiare l'impostazione per visualizzare i messaggi di errore completi
andando in /usr/src/linux/drivers/block/ide-cd.c, cambiando il valore
di VERBOSE_IDE_CD_ERRORS to 1, e ricompilando il kernel.
6.14. Come posso stabilire che velocità ha il mio CD-ROM?
Questo è un modo. Questo comando misura quanto ci vuole per leggere
1500K di dati da un CD:
% time -p dd if=/dev/cdrom of=/dev/null bs=1k count=1500
1500+0 records in
1500+0 records out
real 5.24
user 0.03
sys 5.07
Il transfer rate di un drive a singola velocità è di 150 kilobytes al
secondo, per cui dovrebbe impiegarci circa 10 secondi. A doppia
velocità 5, a quadrupla 2,5, ecc.
Il tempo "real" sopra è probabilmente il miglior numero da guardare --
in questo caso indica un drive a doppia velocità. Puoi aumentare la
quantità di dati per effettuare misurazioni più accurate (nel caso tu
te lo stia chiedendo, i dati letti non vanno nella cache). Dovrai
probabilmente avviare il comando un po' di volte e fare la media.
Ho scritto un piccolo programma in C che misura e riporta il transfer
rate di un CD-ROM; posso mandartelo su tua richiesta.
6.15. Il mio CD-ROM ha smesso di funzionare dopo che Linux è stato
installato
Il sintomo di solito indica che il boot disk che hai usato per
l'installazione riconosceva il drive CD-ROM, ma dopo che Linux è stato
installato su un hard disk o su un altro floppy e riavviato non lo
riconosce più.
Il motivo più comune è che con alcune distribuzioni Linux il kernel
installato sul tuo hard disk non è necessariamente quello stesso che
era sul dischetto di boot. Potresti aver selezionato un disco di boot
che si adattava al tuo hardware CD-ROM, mentre il kernel installato
potrebbe essere un kernel "generico" che manca del supporto CD-ROM.
Puoi verificare questo seguendo le linee-guida per la risoluzione dei
problemi discusse più sopra in questo documento.
La soluzione è ricompilare il kernel, assicurandosi che i driver per
il tuo drive CD-ROM ed ogni altro driver sia richiesto (ad es. il
controller SCSI, il filesystem ISO-9660) siano inclusi. Consulta il
Kernel HOWTO se
non sai come fare.
Se hai passato qualche opzione da linea di comando al disco di boot
(ad es. "hdc=cdrom") avrai bisogno di aggiungere queste al file di
configurazione del programma di boot (tipicamente /etc/lilo.conf).
6.16. Ci sono file "nascosti", in un CD, che non riesco a leggere
Alcuni CD hanno file con il bit "hidden" ("nascosto") impostato.
Normalmente questi file non sono visibili. Se monti il CD con
l'opzione "unhide" allora i file dovrebbero essere accessibili (questo
non sembra essere documentato da altre parti).
6.17. Dove sono documentate le API per i CD-ROM?
Se vuoi scrivere le tue applicazioni, come un riproduttore di audio
CD, dovrai padroneggiare le interfacce di programmazione di
applicazioni (API) fornite da Linux.
Originariamente i driver del kernel per i CD-ROM usavano le loro
proprie funzioni ioctl() per supportare funzionalità specifiche per
ogni drive. I file header come /usr/include/linux/sbpcd.h descrivono
queste funzioni. Poiché molti driver erano basati su altri driver, le
interfacce, sebbene non identiche, hanno molto in comune.
Più recentemente c'è stata un'iniziativa portata avanti da David van
Leeuwen (david@tm.tno.nl) per standardizzare le API per drive CD-ROM,
individuando ed adottando del codice comune ed assicurandosi che tutti
i driver si comportino allo stesso modo. Questo è documentato nel file
/usr/src/linux/Documentation/cdrom/cdrom-standard.tex. Molti driver
del kernel supportano questo standard. Dal kernel 2.0 tutti i driver
CD-ROM si sono conformati a questa API.
Il mio libro Linux Multimedia Guide, si addentra un po' nell'argomento
di programmare per i drive CD-ROM, specialmente per funzioni audio.
Vedi la fine della sezione Riferimenti.
6.18. Perché non vedo i nomi lunghi in questo CD-ROM per Windows?
Se hai un CD-ROM che ha nomi di file lunghi sotto Windows ma non sotto
Linux, può essere stato formattato usando il filesystem proprietario
Joliet di Microsoft. Vedi la prossima domanda per una soluzione.
6.19. È supportato il filesystem Joliet di Microsoft?
Microsoft ha creato un'estensione al formato ISO chiamata Joliet.
Aggiunge il supporto per nomi di file lunghi codificati usando il
formato UNICODE 16-bit.
Dalla versione 2.0.34 il kernel di Linux prevede il supporto per le
estensioni Joliet. Devi abilitare tale supporto nel kernel.
Se vuoi visualizzare i nomi di file con caratteri del linguaggio
nativo correttamente, devi abilitare nel kernel il supporto per
l'appropriato set di caratteri NLS ISO8859.
6.20. Linux supporta gli "enhanced" CD?
Alcuni CD audio sono "enhanced" (migliorati) con dati aggiuntivi.
Tipicamente troverai che questi CD hanno le solite tracce audio come
pure una traccia dati che può essere montata come un filesystem
ISO9660.
Un CD enhanced che ho potuto esaminare aveva applicazioni Microsoft
Windows e Apple Macintosh (che ovviamente non funzionavano
direttamente sotto Linux, sebbene abbia avuto un parziale successo
avviando l'applicazione Windows con l'emulatore WINE). C'erano anche
alcune immagini GIF che potevano essere visualizzate usando un
programma standard come xv e alcune animazioni in formato QuickTime,
eseguibili con xanim. Era un CD multisessione, di cui alcuni drive CD-
ROM molto vecchi non supportano la lettura. Sul disco v'era un file
readme.txt contenente delle FAQ sugli Enhanced CD.
6.21. Linux supporta i DVD-ROM?
I DVD-ROM compatibili SCSI e ATAPI dovrebbero funzionare sotto Linux
per la lettura di dischi formattati col filesystem ISO-9660. In altre
parole funzioneranno come un (eventualmente molto più capiente)
lettore CD-ROM.
Molti dischi DVD-ROM usano il filesystem UDF. Al momento di stendere
questo documento, questo aspetto era ancora in sviluppo. Le patch per
il kernel erano disponibili su .
Comunque, non sono a conoscenza di alcun supporto per riprodurre video
DVD codificati in MPEG-2 sia via software che in unione a un decoder
hardware. Apparentemente la documentazione per il formato di codifica
può essere ottenuta solo ad alto costo e sottostando ad un accordo di
non-diffusione. Un altro aspetto è che la decodifica MPEG tipicamente
usa hardware proprietario per il quale i produttori potrebbero non
essere diaposti a rilasciare le specifiche per la programmazione.
Questi fattori possono precludere la produzione qualsiasi software per
i video DVD per linux che voglia essere disponibile gratuitamente e
liberamente.
6.22. Linux supporta i CD-RW?
I CD-RW che rispettano le specifiche SCSI ed ATAPI dovrebbero
funzionare sotto Linux per dischi formattati con un filesystem
ISO-9660. Questo include la possibilità di scrivere sul disco.
Molti dischi CD-RW usano il filesystem UDF. Al momento di stendere
questo documento, questo aspetto era ancora in sviluppo. Le patch per
il kernel erano disponibili su .
7. Riferimenti
Ho già nominato i file di documentazione, di solito installati in
/usr/src/linux/Documentation/cdrom. Sono una miniera d'oro di
informazioni utili.
Le seguenti FAQ Usenet sono inviate periodicamente a news.answers e
archiviate su siti FTP Internet come :
· alt.cd-rom FAQ
· comp.periphs.scsi FAQ
· Enhanced IDE/Fast-ATA/ATA-2 FAQ
Molti altri HOWTO di Linux hanno informazioni utili sui CD-ROM:
· SCSI HOWTO
· Hardware Compatibility HOWTO
· Sound HOWTO
· Kernel HOWTO
· Distribution HOWTO
· CD Writing HOWTO
Almeno una dozzina di compagnie vendono distribuzioni Linux su CD-ROM;
molte di esse sono elencate nel Distribution HOWTO.
I seguenti newsgroup Usenet trattano argomenti correlati ai CD-ROM:
· comp.publish.cdrom.hardware
· comp.publish.cdrom.multimedia
· comp.publish.cdrom.software
· comp.sys.ibm.pc.hardware.cd-rom
· alt.cd-rom
· alt.cd-rom.reviews
Anche i newsgroup comp.os.linux rappresentano valide fonti di
informazioni, specifiche per Linux.
Un grosso archivio di informazioni sui CD-ROM e sul software si trova
a .
Puoi trovare un documento di FAQ sui dispositivi IDE ed ATA a
e a .
Western Digital, la società che per prima ha usato il protocollo IDE,
mette a disposizione informazioni su di esso nel proprio sito FTP a
.
Puoi trovare un sito web dedicato al multimedia a
. Creative Labs ha il suo sito
web a .
La Linux Software Map (LSM) è un riferimento inestimabile per reperire
software per Linux. La LSM può essere trovata in vari siti FTP
anonimi, come (conosciuto
in passato come sunsite). Ci sono anche molti siti web che mantengono
un database delle applicazioni Linux. Uno di essi è
.
La mailing list di Linux ha un gran numero di "canali" dedicati ad
argomenti diversi. Per individuare a quale unirsi, manda un'e-mail a
majordomo@vger.rutgers.edu con la parola "help" come corpo del
messaggio.
Il Linux Documentation Project ha prodotto numerosi libri su Linux,
tra cui Linux Installation and Getting Started. Questi sono
liberamente disponibili da FTP anonimi dei maggiori archivi Linux o
possono essere acquistati in copie stampate (NdT: per versioni in
italiano di alcuni di essi, dai un'occhiata al sito di ILDP, presso
www.pluto.linux.it).
Per finire, un suggerimento spudorato: se vuoi saperne molto di più
sul multimedia sotto Linux (specialmente le applicazioni e la
programmazione per CD-ROM e schede audio), dai un'occhiata al mio
libro Linux Multimedia Guide, ISBN 1-56592-219-0, edito da O'Reilly
and Associates. Assieme all'edizione originale in inglese, sono ora in
stampa traduzioni in Francese e Giapponese. Per maggiori dettagli,
chiama dal Nord America il numero 800-998-9938 o consulta la pagina
web o la mia
home page .