Questa sezione non vuole essere esaustiva. Per maggiori informazioni rimando all'ottimo CD-Writing HOWTO di Winfried Trümper. Sotto Linux sono supportati masterizzatori SCSI, EIDE e per porta parallela (PP nel seguito). Non sono ancora supportati gli USB, per questi si comincerà a vedere qualcosa *forse* con i kernel 2.4.*. La prossima tabella la copio sfacciatamente dall'howto sopra-citato:
con Y si intende che l'abilitazione deve far parte integrante del kernel
con M si intende che l'abilitazione deve avvenire come modulo
con Y/M si intende che si può scegliere indifferentemente un modo o l'altro
Sez. Descrizione Modulo SCSI IDE PP ------------------------------------------------------------ BLOCK Enhanced IDE/MFM/RLL... Y BLOCK IDE/ATAPI CDROM ide-cd M *** NOTA BLOCK SCSI hostadaptor emulation ide-scsi M *** NOTA BLOCK Loopback device loop M M M PARIDE Parallel port IDE device paride Y/M PARIDE Parallel port ATAPI CD-ROMs M PARIDE Parallel port generic ATAPI M PARIDE (select a low-level driver) Y SCSI SCSI support scsi_mod Y/M Y/M *** NOTA SCSI SCSI CD-ROM support sr_mod Y/M Y/M *** NOTA SCSI Enable vendor-specific Y Y SCSI SCSI generic support sg Y/M Y/M *** NOTA SCSI (select a low-level driver) Y FS ISO 9660 CDROM filesystem iso9660 Y/M Y/M Y/M FS Microsoft Joliet cdrom... joliet Y Y Y |
Se tutto va bene, al successivo riavvio, con un dmesg | less potrete vedere che il kernel ha riconosciuto la periferica... e comincia l'avventura!
Nota: Per chi usa un masterizzatore EIDE:
se si opta per l'uso dei moduli è importante aggiungere i seguenti parametri nel vostro /etc/lilo.conf
... image=/boot/vmlinuz-2.2.18 label=2.2.18 read-only root=/dev/hda3 append="hdc=ide-scsi hdd=ide-scsi" <--------questo ...in modo da indicare a linux che quelle periferiche devono essere "viste" attraverso il modulo ide-scsi. Naturalmente, adattate il codice al vostro caso. Ricordatevi poi di reinstallare lilo, con:
# /sbin/lilose qualcosa non funziona usando i moduli provate ad accorpare nel kernel le voci una per una, a cominciare dalla voce IDE/SCSI, altrimenti detta "Emulazione SCSI". L'emulazione SCSI con i kernel della serie 2.2.* e superiori impone necessariamente che anche gli eventuali lettori cd rom eide presenti sulla macchina siano visti come periferiche SCSI, è quindi inutile (e talvolta produce errori) abilitare nel kernel il modulo ide-cd.
Generalmente le periferiche SCSI, oltre alla maggiore affidabilità caratteristica di questa tecnologia, danno minori problemi di riconoscimento/compatibilità col pinguino, se quindi potete permettervelo, un masterizzatore SCSI è la scelta migliore.
Nota: Ultima precisazione: qualche volta (è successo a me) un masterizzatore EIDE non ne vuole sapere di andare se non è il master del suo canale, ergo, se non funziona come slave provate ad impostarlo come master. L'impostazione migliore pare essere quella di lasciare i drive sorgenti (hard-disk che ospiterà le immagini ISO9660 e lettore cd-rom) come unità rispettivamente master e slave sul canale primario EIDE, e il masterizzatore come unità master sul canale secondario EIDE, cui nel caso affiancare un eventuale secondo hard-disk. Questo garantisce che le unità funzionino al massimo delle loro possibilità. Utile anche attivare sugli hard-disk e cdrom/cdr/cdrw EIDE (NON gli SCSI!), le funzionalità avanzate permesse, tipo accesso al disco a 32 bit, DMA e altro, tramite il comando hdparm.
Attenzione | |
L'uso di hdparm può essere PERICOLOSO! Fate SEMPRE le prove prima e dopo ogni comando hdparm che date, con: hdparm -tT /dev/hdX, sostituendo a X le varie unità. Questo vi fornirà dei test per valutare l'aumento o meno delle prestazioni con le varie opzioni impostate. In genere le opzioni da impostare sono: -d1 (usa DMA) e -c3 (usa accesso al disco a 32bit, con sync sequence). Altre possono essere -u1 e -m... (leggete la man-page di hdparm, per calcolare il valore di m). Tenete inoltre presente che se il supporto ide-scsi è compilato come modulo, quando questo viene scaricato dalla memoria, si perdono le impostazioni di hdparm. Per aggirare l'ostacolo, potete aggiungere al vostro file /etc/modules.conf una riga tipo:
|
Per vedere come vengono riconosciute le nostre periferiche dal kernel si può dare, come utente root, il comando: cdrecord -scanbus. Io ho un masterizzatore come master ed un lettore come slave nel secondo canale EIDE, ed ecco il mio output:
[tty5][root@gondor /home/rjval]# cdrecord -scanbus Cdrecord 1.9 (i686-pc-linux-gnu) Copyright (C) 1995-2000 Jörg Schilling Linux sg driver version: 2.1.39 Using libscg version 'schily-0.1' scsibus0: 0,0,0 0) 'SAMSUNG ' 'CD-R/RW SW-208B ' 'BS01' Removable CD-ROM 0,1,0 1) 'GoldStar' 'CD-ROM CRD-8322B' '1.02' Removable CD-ROM 0,2,0 2) * 0,3,0 3) * 0,4,0 4) * 0,5,0 5) * 0,6,0 6) * 0,7,0 7) * |
Come si può vedere il masterizzatore ha le "coordinate" (non mi dilungo sulla loro descrizione) 0,0,0, mentre il lettore ha 0,1,0. Dal momento in cui le periferiche sono riconosciute dal kernel come SCSI, il loro posizionamente in /dev sarà (nel mio caso):
/dev/scd0 per il master /dev/scd1 per lo slave |
se, quindi, nella nostra /dev ci sono di link di nome cdrom, cdrom1 che puntano rispettivamente a /dev/hdc (secondary master), /dev/hdd (secondary slave) questi vanno rimossi e rimpiazzati da link che puntano a queste altre periferiche (aggiustate il tutto alla vostra situazione!), come utente root:
# cd /dev # rm cdrom # rm cdrom1 # ln -s scd0 cdrom # ln -s scd1 cdrom1 |
Se invece la vostra distro non usa questi links ricordati di cambiare il vostro /etc/fstab, altrimenti non riuscirete più a montare i cdrom.