<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> <HTML> <HEAD> <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9"> <TITLE>The Linux CD-ROM HOWTO: Installazione</TITLE> <LINK HREF="CDROM-HOWTO-5.html" REL=next> <LINK HREF="CDROM-HOWTO-3.html" REL=previous> <LINK HREF="CDROM-HOWTO.html#toc4" REL=contents> </HEAD> <BODY> <A HREF="CDROM-HOWTO-5.html">Avanti</A> <A HREF="CDROM-HOWTO-3.html">Indietro</A> <A HREF="CDROM-HOWTO.html#toc4">Indice</A> <HR> <H2><A NAME="s4">4. Installazione</A></H2> <P> <P>L'installazione di un CD-ROM sotto Linux si compone dei seguenti passi: <P> <OL> <LI>Installare l'hardware</LI> <LI>Configurare e compilare il kernel di Linux</LI> <LI>Creare i file di dispositivo e impostare i parametri del boot</LI> <LI>Avviare il kernel</LI> <LI>Montare il dispositivo</LI> </OL> <P>La prossima sezione coprirà ognuno di questi punti in dettaglio. <P> <H2><A NAME="ss4.1">4.1 Installare l'hardware</A> </H2> <P> <P>Seguite le istruzioni del produttore per installare l'hardware o fatelo fare al vostro rivenditore. I dettagli varieranno a seconda che il drive sia esterno o interno e in base del tipo dell'interfaccia utilizzata. Non ci sono requisiti di installazione particolari per Linux. Potrete aver bisogno di cambiare 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. <P>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 si applichi più ai kernel più recenti). <P> <H2><A NAME="ss4.2">4.2 Configurare e compilare il kernel di Linux</A> </H2> <P> <P>Se state installando da zero Linux da CD-ROM probabilmente starete usando un disco di boot e/o root fornito come parte della distribuzione Linux. Se possibile, dovreste usare un disco di boot con i driver del kernel propri del vostro drive CD-ROM. Se non riuscite a trovare un disco di boot con i driver CD-ROM necessari, ci sono parecchie strade per risolvere il problema: <P> <OL> <LI>Fate il boot direttamente da CD-ROM (se supportato dal PC e dal CD di Linux)</LI> <LI>Installate direttamente dalla rete</LI> <LI>Avviate il DOS e installate i file di Linux sull'hard disk</LI> <LI>Avviate il DOS e create un insieme di dischetti da cui installare Linux</LI> <LI>Trovate qualcuno che vi possa fare un disco di boot con i driver richiesti</LI> </OL> <P>Il <A HREF="http://metalab.unc.edu/LDP/HOWTO/Installation-HOWTO.html">Linux Installation HOWTO</A> contiene ulteriori informazioni sull'installazione di Linux. Se avete acquistato Linux su CD-ROM, probabilmente troverete allegate delle istruzioni di installazione (quel piccolo libretto nella custodia del CD, o qualche file sul CD stesso). <P>Una volta che Linux è stato installato, la maggior parte degli utenti vorranno compilare il loro kernel personalizzato, di solito per uno di questi motivi: <P> <UL> <LI>per supportare un drive CD-ROM o un altro dispositivo</LI> <LI>per aggiornarsi a una nuova versione del kernel</LI> <LI>per liberare risorse di memoria riducendo al minimo la dimensione del kernel</LI> </UL> <P>Dovreste dare un'occhiata al <A HREF="http://metalab.unc.edu/LDP/HOWTO/Kernel-HOWTO.html">Linux Kernel HOWTO</A> per avere maggiori dettagli sulla compilazione del kernel. Menzionerò solo alcuni particolari specifici per i drive CD-ROM. <P>Ovviamente, avrete bisogno di attivare il supporto per il vostro drive CD- ROM quando lanciate un ``make config''. <P>Se avete un drive CD-ROM ATAPI, dovrete rispondere <CODE>yes</CODE> (sì) alle domande: <P> <BLOCKQUOTE><CODE> <PRE> 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/?] </PRE> </CODE></BLOCKQUOTE> <P>Per drive CD-ROM SCSI, abilitate queste opzioni: <P> <BLOCKQUOTE><CODE> <PRE> SCSI support (CONFIG_SCSI) [Y/n/m/?] SCSI CDROM support (CONFIG_BLK_DEV_SR) [Y/n/m/?] </PRE> </CODE></BLOCKQUOTE> <P>Abilitate anche il supporto per l'adattatore SCSI quando viene richiesto, per esempio: <P> <BLOCKQUOTE><CODE> <PRE> Adaptec AHA152X/2825 support (CONFIG_SCSI_AHA152X) [Y/n/m/?] </PRE> </CODE></BLOCKQUOTE> <P>Per drive CD-ROM con interfaccia proprietaria, abilitate il driver appropriato. Potete usare la tabella precedente per determinare il driver da usare per il vostro modello. <P>Virtualmente tutti i CD-ROM usano il file system ISO-9660, perciò dovete abilitare anche: <P> <BLOCKQUOTE><CODE> <PRE> ISO 9660 CDROM filesystem support (CONFIG_ISO9660_FS) [Y/n/m/?] </PRE> </CODE></BLOCKQUOTE> <P>Sebbene non sia richiesto per far funzionare il CD-ROM, se avete una scheda audio supportata da Linux a questo punto potreste anche voler abilitare e configurare il driver del kernel per il supporto audio. Il <A HREF="http://metalab.unc.edu/LDP/HOWTO/Sound-HOWTO.html">Sound HOWTO</A> può essere un riferimento valido. <P>Dovete quindi seguire la procedura normale per compilare il kernel e installarlo. Non fate il boot del nuovo kernel finché non avete creato tutti i file di dispositivo richiesti e non avete impostato i parametri di boot come descritto nella prossima sezione. <P>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 <A HREF="http://metalab.unc.edu/LDP/HOWTO/Kernel-HOWTO.html">Kernel HOWTO</A> potete trovare descritto come usare i moduli. <P>Se un drive elencato non è supportato dal vostro kernel, probabilmente avrete bisogno di aggiornare quest'ultimo a una nuova versione. <P>È possibile che vi serva usare un driver che è distribuito separatamente dai sorgenti del kernel. Di nuovo, il <A HREF="http://metalab.unc.edu/LDP/HOWTO/Kernel-HOWTO.html">Kernel HOWTO</A> spiega come farlo. <P>Notate che c'è una modalità di configurazione del kernel basata su menu, richiamata da ``make menuconfig'' e una configurazione grafica basata su X11 richiamata da ``make xconfig''. Tutti e tre i metodi di configurazione offrono l'aiuto in linea. <P> <H2><A NAME="ss4.3">4.3 Creare i file di dispositivo e impostare i parametri del boot</A> </H2> <P> <P>Il kernel usa i file di dispositivo (device file) per identificare quale driver di dispositivo (device driver) usare. Se state avviando una distribuzione Linux standard, potete aver già creato i file necessari durante l'installazione. Nella Slackware, per esempio, c'è uno strumento di <CODE>setup</CODE> basato su menu che comprende l'impostazione del CD-ROM, e la maggior parte dei sistemi hanno uno script /dev/MAKEDEV. Se non usate uno di questi metodi, raccomando almeno di verificare i file di dispositivo rispetto alle informazioni di questa sezione. <P>Potete creare i file di dispositivo avviando i comandi di shell indicati per il vostro tipo di drive. Questo dovrebbe essere fatto come utente <CODE>root</CODE>. Nota che alcune distribuzioni Linux possono usare nomi di dispositivi CD-ROM leggermente diversi da quelli elencati qui. <P>È raccomandabile anche la creazione di 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 <P> <BLOCKQUOTE><CODE> <PRE> # ln -s /dev/hdd /dev/cdrom </PRE> </CODE></BLOCKQUOTE> <P>Se volete riprodurre CD audio, dovrete impostare la protezione sul file di dispositivo (il file vero, non il link simbolico a esso) per permettere a tutti gli utenti di leggerlo, per esempio <P> <BLOCKQUOTE><CODE> <PRE> # chmod 664 /dev/hdd # ls -l /dev/hdd brw-rw-r-- 1 root disk 22, 64 Feb 4 1995 /dev/hdd </PRE> </CODE></BLOCKQUOTE> <P>Quando avviate Linux, i driver di dispositivo tentano di determinare se sono presenti i dispositivi appropriati, tipicamente provando indirizzi specifici. Molti dei driver provano automaticamente su diversi indirizzi, ma a causa delle differenze nella configurazione, di possibili conflitti o di limitazioni hardware, alcune volte hanno bisogno di aiuto per identificare gli indirizzi e 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 boot loader. Con LILO, per esempio, dovreste aggiungere un comando <CODE>append</CODE> come il seguente al file /etc/lilo.conf: <P> <BLOCKQUOTE><CODE> <PRE> append = "sbpcd=0x230,SoundBlaster" </PRE> </CODE></BLOCKQUOTE> <P>Controllate la documentazione di LILO per maggiori informazioni. <P>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 vi servirà solo leggere la sezione specifica al vostro particolare tipo di drive. I file di documentazione sono di solito rintracciabili nella directory /usr/src/linux/Documentation/cdrom. <P> <H3>Il driver Sbpcd</H3> <P> <P> <PRE> Principale autore: Eberhard Moenkeberg (emoenke@gwdg.de) Supporto multisessione: 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 </PRE> <P>Questo driver accetta una linea di comando del kernel nella forma: <P> <BLOCKQUOTE><CODE> <PRE> sbpcd=<indirizzo io>,<tipo di interfaccia> </PRE> </CODE></BLOCKQUOTE> <P>Dove il primo parametro è l'indirizzo base del dispositivo (per esempio 0x230) e il secondo è uno tra ``SoundBlaster'', ``LaserMate'' o ``SPEA''. Leggete il file sbpcd.h per suggerimenti su che tipo di interfaccia utilizzare. L'uso di <CODE>sbpcd=0</CODE> disabilita la prova automatica (auto-probing), disabilitando il driver. <P>Il file di dispositivo può essere creato utilizzando: <P> <BLOCKQUOTE><CODE> <PRE> # mknod /dev/sbpcd b 25 0 </PRE> </CODE></BLOCKQUOTE> <P>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 avete più di un controller, aggiungete dispositivi con numero primario 26, 27 e 28, fino a un massimo di quattro controller (questo fa 16 drive in totale; si spera siano abbastanza per la maggior parte degli utenti :-). <P>Leggete il file sbpcd per maggiori informazioni su questo driver. <P><EM>Se avete acquistato un drive CD-ROM di recente, non credete che se è connesso a una SoundBlaster debba per forza usare questo driver. La maggior parte dei CD-ROM venduti dalla Creative Labs sono ora EIDE/ATAPI.</EM> <P> <H3>Il driver Sonycdu535</H3> <P> <P> <PRE> Principale autore: Ken Pizzini (ken@halcyon.com) Supporto multisessione: 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 </PRE> <P>Questo driver accetta una linea di comando del kernel nella forma: <P> <BLOCKQUOTE><CODE> <PRE> sonycd535=<indirizzo io> </PRE> </CODE></BLOCKQUOTE> <P>dove il parametro è l'indirizzo base del controller (per esempio 0x320). In alternativa potete impostare l'indirizzo nel file sonycd535.h e compilarlo al suo interno. <P>Il file di dispositivo può essere creato utilizzando: <P> <BLOCKQUOTE><CODE> <PRE> # mknod /dev/sonycd535 b 24 0 </PRE> </CODE></BLOCKQUOTE> <P>Alcune distribuzioni Linux usano /dev/sonycd per questi dispositivi. Versioni più vecchie del driver usavano come numero primario 21; assicuratevi che il vostro file di dispositivo sia corretto. <P>Questo driver era dapprima distribuito come una patch, ma ora è parte del kernel standard. Leggete il file sonycd535 per maggiori informazioni su questo driver. <P> <H3>Il driver Cdu31a</H3> <P> <P> <PRE> Principale autore: Corey Minyard (minyard@-rch.cirr.com) Supporto multisessione: 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 </PRE> <P>Questo driver accetta una linea di comando del kernel nella forma: <P> <BLOCKQUOTE><CODE> <PRE> cdu31a=<indirizzo io>,<interrupt>,PAS </PRE> </CODE></BLOCKQUOTE> <P>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 a una scheda audio Pro Audio Spectrum 16, altrimenti va tralasciato. <P>Se il driver è caricato come modulo, usa un formato lievemente diverso. Quando caricate il driver usando i comandi modprobe o insmod, i parametri prendono la forma: <P> <BLOCKQUOTE><CODE> <PRE> cdu31a_port=<indirizzo io> cdu31a_irq=<interrupt> </PRE> </CODE></BLOCKQUOTE> <P>L'indirizzo I/O è richiesto, mentre il numero di interrupt è opzionale. <P>Il file di dispositivo può essere creato utilizzando: <P> <BLOCKQUOTE><CODE> <PRE> # mknod /dev/cdu31a b 15 0 </PRE> </CODE></BLOCKQUOTE> <P>Leggete il file cdu31a per maggiori informazioni su questo driver. <P>Leggete anche la pagina Web scritta da Jeffrey Oxenreider ( <A HREF="mailto:zureal@infinet.com">zureal@infinet.com</A>) che copre molti problemi comuni con questi drive. Può essere trovata a <A HREF="http://lemures.shinma.symix.com/~zureal/cdu31a.html">http://lemures.shinma.symix.com/~zureal/cdu31a.html</A>. <P> <H3>Il driver Aztcd</H3> <P> <P> <PRE> Principale autore: Werner Zimmermann (zimmerma@rz.fht-esslingen.de) Supporto multisessione: 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 </PRE> <P>Questo driver accetta una linea di comando del kernel nella forma: <P> <BLOCKQUOTE><CODE> <PRE> aztcd=<indirizzo io> </PRE> </CODE></BLOCKQUOTE> <P>dove il parametro è l'indirizzo I/O base della scheda (per esempio 0x340). <P>Il file di dispositivo può essere creato utilizzando: <P> <BLOCKQUOTE><CODE> <PRE> # mknod /dev/aztcd0 b 29 0 </PRE> </CODE></BLOCKQUOTE> <P>Nota che questo driver è solo per il CDA268-01A. Altri modelli, compresi il CDA268-03I e il CDA269-031SE non sono proprietari e usano il driver IDECD (ATAPI) del kernel. <P>Si veda il file aztcd per maggiori informazioni su questo driver. <P> <H3>Il driver Gscd</H3> <P> <P> <PRE> Principale autore: Oliver Raupach (raupach@nwfs1.rz.fh-hannover.de) Supporto multisessione: 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 </PRE> <P>Questo driver accetta una linea di comando del kernel nella forma: <P> <BLOCKQUOTE><CODE> <PRE> gscd=<indirizzo io> </PRE> </CODE></BLOCKQUOTE> <P>specificando l'indirizzo I/O base della scheda (per esempio 0x340). <P>Il file di dispositivo può essere creato utilizzando: <P> <BLOCKQUOTE><CODE> <PRE> # mknod /dev/gscd0 b 16 0 </PRE> </CODE></BLOCKQUOTE> <P>Leggete il file gscd e il sito Web <A HREF="http://linux.rz.fh-hannover.de/~raupach/">http://linux.rz.fh-hannover.de/~raupach/</A> per maggiori informazioni su questo driver. <P> <H3>Il driver Mcd</H3> <P> <P> <PRE> Principale autore: Martin (martin@bdsi.com) Supporto multisessione: 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 </PRE> <P>Questo è il driver più vecchio di quelli Mitsumi; è stato disponibile per un certo tempo. Potreste provare il driver più recente <CODE>mcdx</CODE>, che ha alcune caratteristiche in più ma potrebbe essere meno stabile. <P>Questo driver accetta una linea di comando del kernel nella forma: <P> <BLOCKQUOTE><CODE> <PRE> mcd=<indirizzo io>,<irq> </PRE> </CODE></BLOCKQUOTE> <P>specificando l'indirizzo I/O base della sceda (per esempio 0x340) e il numero di richiesta IRQ usato. <P>Il file di dispositivo può essere creato utilizzando: <P> <BLOCKQUOTE><CODE> <PRE> # mknod /dev/mcd b 23 0 </PRE> </CODE></BLOCKQUOTE> <P>Vedi il file mcd per maggiori informazioni su questo driver. <P> <H3>Il driver Mcdx</H3> <P> <P> <PRE> Principale autore: Heiko Schlittermann Supporto multisessione: 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 </PRE> <P>Questo è un driver nuovo per i drive Mitsumi. Il più vecchio e forse più stabile driver <CODE>mcd</CODE> è ancora disponibile. <P>Questo driver accetta una linea di comando del kernel nella forma: <P> <BLOCKQUOTE><CODE> <PRE> mcdx=<indirizzo io>,<irq> </PRE> </CODE></BLOCKQUOTE> <P>specificando l'indirizzo base I/O della scheda (ad es. 0x340) e il numero di richiesta IRQ usato. <P>Il file di dispositivo può essere creato utilizzando: <P> <BLOCKQUOTE><CODE> <PRE> # mknod /dev/mcdx0 b 20 0 </PRE> </CODE></BLOCKQUOTE> <P>Se avete acquistato di recente un drive CD-ROM Mitsumi, non date per scontato che usi questi driver. I nuovi drive Mitsumi sono ora compatibili EIDE/ATAPI e usano il driver idecd del kernel. <P>Si veda il file mcdx per maggiori informazioni su questo driver. <P> <H3>Il driver Cm206</H3> <P> <P> <PRE> 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 </PRE> <P>Questo driver accetta una linea di comando del kernel nella forma: <P> <BLOCKQUOTE><CODE> <PRE> cm206=<indirizzo io>,<interrupt> </PRE> </CODE></BLOCKQUOTE> <P>ove il primo numero è l'indirizzo base I/O della scheda (per esempio 0x340). Il secondo è il canale d'interrupt. <P>Il file di dispositivo può essere creato utilizzando: <P> <BLOCKQUOTE><CODE> <PRE> # mknod /dev/cm206cd b 32 0 </PRE> </CODE></BLOCKQUOTE> <P>Consultate il file cm206 per maggiori informazioni su questo driver. <P> <H3>Il driver Optcd</H3> <P> <P> <PRE> Principale autore: Leo Spiekman (spiekman@dutette.et.tudelft.nl) Supporto multisessione: 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 </PRE> <P>Questo driver accetta una linea di comando del kernel nella forma: <P> <BLOCKQUOTE><CODE> <PRE> optcd=<indirizzo io> </PRE> </CODE></BLOCKQUOTE> <P>per fornire l'indirizzo I/O base della scheda (per esempio 0x340). <P>Il file di dispositivo può essere creato utilizzando: <P> <BLOCKQUOTE><CODE> <PRE> # mknod /dev/optcd0 b 17 0 </PRE> </CODE></BLOCKQUOTE> <P>Si veda il file optcd per maggiori informazioni su questo driver. <P> <H3>Il driver Sjcd</H3> <P> <P> <PRE> Principale autore: Vadim V. Model (vadim@rbrf.msk.su) Supporto multisessione: 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 </PRE> <P>Questo driver accetta una linea di comando del kernel nella forma: <P> <BLOCKQUOTE><CODE> <PRE> sjcd=<indirizzo io>,<interrupt>,<DMA> </PRE> </CODE></BLOCKQUOTE> <P>indicando l'indirizzo base, l'interrupt e il canale DMA da usare (per esempio sjcd=0x340,10,5). <P>Il file di dispositivo può essere creato utilizzando: <P> <BLOCKQUOTE><CODE> <PRE> # mknod /dev/sjcd b 18 0 </PRE> </CODE></BLOCKQUOTE> <P>Consultare il file sjcd per maggiori informazioni su questo driver. <P> <H3>Il driver Paride</H3> <P> <P> <PRE> 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 </PRE> <P>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. <P>Il file di dispositivo può essere creato utilizzando: <P> <BLOCKQUOTE><CODE> <PRE> # mknod /dev/pcd0 b 46 0 </PRE> </CODE></BLOCKQUOTE> <P>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. <P> <H3>Il driver SCSI</H3> <P> <P> <PRE> Principale autore: David Giller Supporto multisessione: 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 </PRE> <P>Ci sono opzioni da riga di comando del kernel specifiche per ogni tipo di controller SCSI. Vedi lo <A HREF="ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/unmaintained/SCSI-HOWTO">SCSI HOWTO</A> per maggiori informazioni. <P>Sono supportati drive multipli (fino al limite del numero massimo di dispositivi sul bus SCSI). Create i file di dispositivo con il numero primario impostato a 11 e il secondario a partire da zero: <P> <BLOCKQUOTE><CODE> <PRE> # mknod /dev/scd0 b 11 0 # mknod /dev/scd1 b 11 1 </PRE> </CODE></BLOCKQUOTE> <P>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). <P>Si veda anche la disamina dell'emulatore SCSI per IDE più sopra in questo documento. <P> <H3>Il driverIDECD</H3> <P> <P> <PRE> Principale autore: Scott Snyder (snyder@fnald0.fnal.gov) Supporto multisessione: 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 </PRE> <P>Questo è il driver per i CD-ROM ATAPI. Accetta una linea di comando del kernel nella forma: <P> <BLOCKQUOTE><CODE> <PRE> hdx=cyls,heads,sects,wpcom,irq o hdx=cdrom </PRE> </CODE></BLOCKQUOTE> <P>dove <CODE>hdx</CODE> 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, <CODE>hdc=1050,32,64 hdd=cdrom</CODE>. <P>Convincere il driver IDE a riconoscere il vostro CD-ROM può essere difficoltoso, specialmente se avete 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. Leggetelo con attenzione. <P>I kernel di Linux più recenti hanno un migliore supporto per dispositivi IDE multipli. Se avete problemi con un vecchio kernel, aggiornarlo può aiutare. <P>Alcuni controller IDE hanno problemi hardware che il driver del kernel può aggirare. Potete aver bisogno di passare parametri aggiuntivi al driver per abilitare queste modalità. Si veda la documentazione per maggiori dettagli. <P> <H2><A NAME="ss4.4">4.4 Avviare il kernel</A> </H2> <P> <P>Adesso potete riavviare il nuovo kernel. Controllate 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): <P> <BLOCKQUOTE><CODE> <PRE> hdd: NEC CD-ROM DRIVE:282, ATAPI CDROM drive </PRE> </CODE></BLOCKQUOTE> <P>Se i messaggi passano troppo veloci per essere letti, potete riguardarli usando <CODE>dmesg</CODE> o <CODE>tail /var/log/messages</CODE>. <P>Se il drive non viene trovato, c'è un problema. Consultate la sezione sulla risoluzione di problemi. <P> <H2><A NAME="ss4.5">4.5 Montare il dispositivo</A> </H2> <P> <P>Per montare (mount) un CD-ROM, inserite un disco nel drive, e avviate il comando <CODE>mount</CODE> come <CODE>root</CODE> (l'esempio seguente dà per scontato che abbiate creato un link simbolico al file di dispositivo come descritto prima e che esista una directory vuota /mnt/cdrom): <P> <BLOCKQUOTE><CODE> <PRE> # mount -t iso9660 -r /dev/cdrom /mnt/cdrom </PRE> </CODE></BLOCKQUOTE> <P>Si può ora accedere al CD nella cartella /mnt/cdrom. <P>Ci sono altre opzioni per il comando mount che potete aver bisogno di usare. Si veda la pagina man <CODE>mount(8)</CODE> per maggiori dettagli. <P>Potete aggiungere una voce a /etc/fstab per montare automaticamente un CD-ROM al boot o per specificare i parametri da usare quando viene montato; consultate la pagina man <CODE>fstab(5)</CODE>. <P>Nota che per riprodurre CD audio <EM>non</EM> occorre montarli. <P>Per smontare (unmount) un CD-ROM, usate il comando <CODE>umount</CODE> come <CODE>root</CODE>: <P> <BLOCKQUOTE><CODE> <PRE> # umount /mnt/cdrom </PRE> </CODE></BLOCKQUOTE> <P>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). Potete quindi espellere il disco. La maggior parte dei drive hanno un pulsante di espulsione; c'è anche un programma <A HREF="http://www.pobox.com/~tranter/eject.html">eject</A> che permette di espellere il CD-ROM via software. <P>Nota che non si dovrebbe 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 (potete disabilitare questa funzione compilando il kernel o usando un comando software). <P>È possibile che dopo aver riprodotto un CD audio non siate più in grado di montare un CD-ROM. Dovete allora mandare un comando CD audio ``STOP'' (usando un programma per la riproduzione di CD) prima di riprovare a montare. Questo problema sembra presentarsi solo col driver SBPCD. <P>I kernel più recenti supportano un automounter basato sul kernel che fornisce un montaggio trasparente all'utente di media rimovibili, inclusi i CD-ROM. Potete trovare gli strumenti che servono su <A HREF="ftp://ftp.kernel.org/pub/linux/daemons/autofs/">ftp://ftp.kernel.org/pub/linux/daemons/autofs/</A>. <P> <H2><A NAME="ss4.6">4.6 Risoluzione di problemi</A> </H2> <P> <P>Se incontrate ancora problemi dopo aver seguito le istruzioni nell'HOWTO, qui ci sono alcune cose che potete controllare. I controlli sono elencati in ordine crescente di complessità. Se un controllo non dà esito positivo, risolvete il problema prima di passare al successivo. <P> <H3>Passo 1: assicuratevi di stare realmente avviando il kernel cheavete compilato</H3> <P> <P>Controllate la data del kernel per vedere se state avviando quello che avete compilato col supporto per CD-ROM. Potete farlo col comando <CODE>uname</CODE>: <P> <BLOCKQUOTE><CODE> <PRE> % uname -a Linux fizzbin 2.2.4 #1 Tue Mar 232 11:23:21 EST 1999 i586 unknown </PRE> </CODE></BLOCKQUOTE> <P>o visualizzando il file /proc/version: <P> <BLOCKQUOTE><CODE> <PRE> % 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 </PRE> </CODE></BLOCKQUOTE> <P>Se la data non corrisponde a quando avete compilato il kernel, ne state avviando uno vecchio. Vi siete ricordati di riavviare? Se usate LILO, l'avete reinstallato (tipicamente lanciando/sbin/lilo)? Se state facendo il boot da floppy, ne avete creato uno nuovo e lo state usando? <P> <H3>Passo 2: assicuratevi che i driver del kernel appropriati sianocompilati</H3> <P> <P>Potete verificare quali driver sono compilati nel kernel consultando /proc/devices: <P> <BLOCKQUOTE><CODE> <PRE> % cat /proc/devices Character devices: 1 mem 2 pty 3 ttyp 4 ttyS 5 cua 7 vcs Block devices: 3 ide0 22 ide1 </PRE> </CODE></BLOCKQUOTE> <P>Per prima cosa cercate il vostro driver di dispositivo CD-ROM. Quelli elencati sopra sono tutti dispositivi a blocchi, in questo caso possiamo vedere che il driver <CODE>idecd</CODE> con numero primario 22 era presente. <P>Assicuratevi anche che il supporto per il filesystem ISO-9660 sia compilato, guardando in /proc/filesystems: <P> <BLOCKQUOTE><CODE> <PRE> % cat /proc/filesystems ext2 nodev proc nodev devpts vfat iso9660 </PRE> </CODE></BLOCKQUOTE> <P>Potete anche vedere quali indirizzi di porta i/o sono utilizzati da un driver con il file /proc/ioports: <P> <BLOCKQUOTE><CODE> <PRE> howto % cat /proc/ioports ... 0230-0233 : sbpcd ... </PRE> </CODE></BLOCKQUOTE> <P>Se qualcuno dei driver che pensavate di aver compilato nel kernel non è visualizzato, allora qualcosa è andato storto al momento di configurare o compilare il kernel. Ricominciate il processo di installazione, cominciando dalla configurazione e compilazione del kernel. <P> <H3>Passo 3: il kernel ha trovato il drive al momento del boot?</H3> <P> <P>Assicuratevi che il dispositivo CD-ROM sia stato trovato quando il kernel si è avviato. Se i messaggi sono passati troppo velocemente, potete di solito richiamarli usando il comando <CODE>dmesg</CODE>: <P> <BLOCKQUOTE><CODE> <PRE> % dmesg </PRE> </CODE></BLOCKQUOTE> <P>o <P> <BLOCKQUOTE><CODE> <PRE> % tail /var/log/messages </PRE> </CODE></BLOCKQUOTE> <P>Se il driver non è stato trovato allora qualcosa è andato storto. Assicuratevi che l'alimentazione sia collegata e che tutti i cavi siano inseriti correttamente. Se il vostro drive ha jumper hardware per l'indirizzamento, controllate che siano impostati correttamente (per esempio come drive 0 se avete un solo drive). I CD-ROM ATAPI devono essere impostati come ``single'' o ``master'' e non come ``slave'' quando un solo dispositivo è collegato a una interfaccia. Se il drive funziona sotto DOS allora potete essere relativamente certo che l'hardware sia impostato correttamente. <P>Molti driver del kernel usano l'auto-probing, ma alcuni no, e in ogni caso la prova automatica non è sempre attendibile. Potete aver bisogno di provare numerosi valori differenti se non siete sicuro dell'indirizzo di I/O o degli altri parametri. LILO può essere (e di solito lo è) configurato per permettere di inserire i parametri manualmente al boot. <P>Un'altra possibilità è che abbiate 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. <P>Un'altra possibilità è che il vostro drive (o scheda di interfaccia) sia uno dei tipi ``compatibili'' che richiedono inizializzazione dal driver DOS. Provate ad avviare DOS e caricare il driver per DOS fornito dal produttore. Poi riavviate Linux facendo un soft boot con <CODE>Control-Alt-Canc</CODE>. <P>Se il vostro drive non è nominato in questo documento, è possibile che non ci siano driver disponibili per esso sotto Linux. Potete controllare presso alcuni dei riferimenti elencati alla fine di questo documento per avere assistenza. <P> <H3>Passo 4: potete leggere dati dal drive?</H3> <P> <P>Provate 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. Usate il file di dispositivo appropriato per il drive e assicuratevi che un CD-ROM sia inserito; usate Control-C per uscire. <P> <BLOCKQUOTE><CODE> <PRE> # dd if=/dev/cdrom of=/dev/null bs=2048 ^C 124+0 records in 124+0 records out </PRE> </CODE></BLOCKQUOTE> <P>Se questo funziona, allora il kernel comunica col drive e potete passare al punto 5. <P>Altrimenti, una possibile causa è il file di dispositivo. Assicuratevi che il file nella directory /dev abbia i numeri primario e secondario corretti come elencato prima per il vostro tipo di driver. Controllate che i permessi per tale file ne permettano la lettura e scrittura. <P>Una possibilità remota è che abbiate un problema hardware. Provate il drive sotto un altro sistema operativo, se possibile, per determinare se questo è il vostro caso. <P> <H3>Passo 5: potete montare il drive?</H3> <P> <P>Se potete leggere dal drive ma non montarlo, prima verificate di aver compilato nel kernel il supporto per il filesystem ISO-9660 leggendo /proc/filesystems, come descritto prima. <P>Assicuratevi di aver montato il drive con le opzioni ``-t iso9660'' e ``-r'' e che nel lettore sia inserito un CD-ROM ISO9660 (non un CD audio) che sapete essere valido. Normalmente dovete montare i drive solo come utente <CODE>root</CODE>. <P>Assicuratevi che il mount point esista e sia una directory vuota. <P>Se state montando automaticamente il CD-ROM al boot, assicuratevi di avere le voci corrette nel file /etc/fstab. <P>Se state eseguendo il demone syslog, ci può essere un messaggio di errore dal kernel che non riuscite a vedere. Usate il comando ``dmesg'': <P> <BLOCKQUOTE><CODE> <PRE> % dmesg SBPCD: sbpcd_open: no disk in drive </PRE> </CODE></BLOCKQUOTE> <P>Ci potrebbero anche essere messaggi di errore registrati in qualche file in /var/log, a seconda di come è configurato il sistema. <P> <H3>Fare il debug per problemi audio</H3> <P> <P>Se il drive funziona coi CD-ROM, ma non riproduce CD audio, queste possono essere alcune possibili soluzioni. <P>Vi serve un programma per riprodurre CD audio. Alcune applicazioni possono essere difettose, o possono non essere compatibili col vostro drive. Provate altre applicazioni e/o ricompilatele. Un buon posto dove cercare software può essere <A HREF="ftp://metalab.unc.edu/pub/Linux/apps/sound/cdrom/">ftp://metalab.unc.edu/pub/Linux/apps/sound/cdrom/</A>. <P>Pochi drive CD-ROM non supportano la riproduzione di CD audio. Controllate i file di documentazione o i sorgenti per vedere se questo è il vostro caso. <P>Controllate se l'audio può essere riprodotto mediante la presa per cuffie sul frontalino del drive. Se è così, probabilmente il problema è legato alla scheda audio. Usate un programma mixer per impostare il dispositivo di input e i livelli di volume. Assicuratevi di aver installato il cavo di collegamento dal drive CD-ROM alla scheda. Assicuratevi anche che il driver del kernel per la scheda audio sia installato e funzionante (si veda il <A HREF="http://metalab.unc.edu/LDP/HOWTO/Sound-HOWTO.html">Sound HOWTO</A>). <P> <H3>Quando tutto il resto fallisce</H3> <P> <P>Se avete ancora problemi, qui ci sono alcuni suggerimenti finali su soluzioni che potete ancora provare: <P> <UL> <LI>Rileggete con attenzione questo HOWTO</LI> <LI>Leggete i riferimenti posti alla fine di questo documento, specialmente i file sorgente del kernel rilevanti</LI> <LI>Inviate via e-mail una domanda a uno tra <CODE>comp.os.linux</CODE> o altri newsgroup usenet</LI> <LI>Inviate una domanda a una mailing list di Linux</LI> <LI>Provate a usare il kernel più recente</LI> <LI>Contattate il vostro rivenditore</LI> <LI>Contattate il produttore del drive CD-ROM</LI> <LI>Inviate una e-mail al gestore del driver del kernel che vi interessa (guardate nel file /usr/src/linux/MAINTAINERS)</LI> <LI>Speditemi una e-mail</LI> <LI>Avviate emacs e digitate <CODE>Esc-x doctor</CODE> :-)</LI> </UL> <P> <HR> <A HREF="CDROM-HOWTO-5.html">Avanti</A> <A HREF="CDROM-HOWTO-3.html">Indietro</A> <A HREF="CDROM-HOWTO.html#toc4">Indice</A> </BODY> </HTML>