Zip Drive Mini-HOWTO
Kyle Dansie,
[email protected]
v2.2, 26 agosto 1998
Questo documento fornisce una veloce guida di riferimento alla config�
urazione e all'utilizzo di un lettore ZIP sotto Linux. Traduzione di
Giovanni Bortolozzo (borto at pluto.linux.it).
1. Introduzione
Il lettore Iomega ZIP � un dispositivo a dischi rimovibili piuttosto
popolare. � disponibile in diverse versioni:
� Parallel Port
� SCSI
� IDE - ATAPI
� Plus
La pi� popolare sembra essere la versione per porta parallela. � in
giro da diverso tempo e costa abbastanza poco. Anche la versione SCSI
� disponibile da un po', ma poich� necessita di una scheda SCSI che
molti non hanno a disposizione, non � cos� popolare come la
precedente. In questo momento, la versione ATAPI sembra essere quella
pi� facilmente reperibile. La Plus � la versione pi� recente del
lettore ZIP: ha la capacit� di rilevare automaticamente a quale porta
(parallela o scsi che sia) � connesso. Questo documento � incentrato
sulla versione per porta parallela, ma offre anche alcune dritte per
le altre versioni.
Questo documento incorpora informazioni collezionate e pubblicate da
altri, in particolare:
� Grant Guenther,
[email protected]
� Scot Wilcoxon,
[email protected]
� Joe Mack,
[email protected]
� Byron Jeff,
[email protected]
Li ringrazio per i loro importanti contributi, ed accetto la
responsabilit� per qualsiasi errore io abbia introdotto.
Un ringraziamento particolare a Grant Guenther che scrisse la versione
0.26 del programma ppa oltre alla versione originale di questo HOWTO.
Se si trova un errore qualsiasi o inesattezze in questo documento, mi
si informi.
[email protected]
1.1. Dove reperire questo documento
La versione pi� aggiornata di questo documento risiede a
<
http://www.njtcom.com/dansie/zip-drive.html>
Per la traduzione italiana si faccia riferimento alla home page
dell'Italian Linux Documentation Project
<
http://wwww.pluto.linux.it/ildp/>.
2. Partenza a Razzo
OK, si � comprato un nuovo lettore ZIP ed ora si vuole usarlo. Alcune
distribuzioni dispongono del modulo gi� compilato. Si pu� provare a
dare insmod ppa per cominciare (ci si assicuri di averlo collegato e
di aver inserito un disco). Se non c'� il programma ppa, allora
bisogna configurare il kernel. La mia macchina ha due porte
parallele, una per lo ZIP e l'altra per la stampante. Ci� rende le
cose semplici, senza bisogno di scambiare i cavi.
Configurazione del kernel:
� cd /usr/src/linux
� make xconfig
� supporto per scsi = Y
� supporto per scsi disk = Y
� supporto per Iomega zip come modulo
� supporto per la stampante anche questo come modulo
� salvare ed uscire
� make dep
� make clean
� make zImage oppure zlilo o zdisk
� make modules
� make modules_install
Ora per usare il lettore:
� caricare il modulo: insmod ppa
� creare un mount point: mkdir /zip
� inserire un dischetto preformattato per win$ozz nel lettore.
� montare il disco: mount -t vfat /dev/sda4 /zip
� usare qualsiasi comando per i file : l /zip, ls /zip, df, cp,
� quando si ha finito: umount /zip
Se si hanno problemi con uno qualsiasi dei passi precedenti, si vedano
le sezioni che seguono per istruzioni pi� dettagliate.
3. Il lettore ZIP
Ci sono almeno cinque o sei versioni del lettore Iomega ZIP 100. Tutte
accettano speciali cartucce simili ai dischetti da 3.5" che possono
contenere 100 megabyte di dati. Il realt� il disco contiene 96
cilindri di 2048 settori ognuno da 512 byte di capacit�, ovvero un
totale di 96 Megabyte.
Il lettore esterno � disponibile in tre varianti:
� Parallel port
� SCSI
� Plus
mentre il lettore interno � disponile nelle seguenti varianti:
� SCSI
� IDE
� ATAPI
Le versioni interne possono essere installate in uno slot per i
lettori da 3.5" o da 5.25". Le versioni esterne sono racchiuse in un
piccolo case di plastica blue, ed alimentate con un alimentatore
esterno.
Tutti i lettori hanno un grosso bottone sul pannello anteriore, che
serve per espellere il disco. Linux blocca la porta mentre sta usando
il drive, ma se viene premuto il bottone mentre questa � bloccata, il
lettore ZIP se ne ricorder� ed espeller� il disco non appena il
software la sblocca.
3.1. Versione per porta parallela (Parallel port)
Il lettore ZIP per porta parallela ha due connettori DB25, il maschio
(DB25M) deve essere connesso con il cavo parallelo fornito alla porta
parallela del proprio computer. L'altro (la femmina, DB25F) � pensato
per supportare una stampante in catena. Linux 2.0.x attualmente non
supporta l'uso simultaneo di un lettore ZIP e di una stampante in
catena. � possibile aggirare il problema utilizzando i moduli
caricabili. Non ci sono opzioni di configurazione. Probabilmente
questo cambier� in versioni future. Si veda il Linux Parallel Port
Sharing Project <
http://www.cyberelk.demon.co.uk/parport.html> per
maggiori informazioni.
Il driver per Linux � disponibile in un paio di versioni diverse. La
versione 0.26 del programma pppa.c � distribuita assieme ai kernel
2.0.x. Si veda la homepage di David Campbell
<
http://www.torque.net/~campbell/> per maggiori informazioni su questo
programma. Durante la stesura di questo documento, l'ultima la
versioni disponibile era la 1.41.
Il lettore ZIP per porta parallela � compatibile con diversi tipi di
porte parallele, ma attualmente la versione 0.26 del driver per Linux
supporta solo le porte standard e bidirezionali. Le versioni pi�
recenti supportano EPP. Se la propria porta parallela ha opzioni di
configurazione (in hardware o nella schermata di setup CMOS) ci si
assicuri di impostare la porta in di queste due modalit� per il
programma 0.26.
Ci si assicuri che tutti i cavi sia bene attaccati.
Si veda inoltre la sezione ``Ottenere maggioni informazioni''.
3.2. Versione SCSI esterna
La versione SCSI esterna del lettore ZIP ha due connettori DB25F, e
due switch di configurazione. Uno switch seleziona l'indirizzo di
destinazione del lettore. La scelta � limitata agli indirizzi 5 o 6.
L'altro abilita un terminatore interno, nel caso il lettore sia
l'ultimo di una catena. I connettori SCSI a 25 pin usano l'ormai
familiare collegamento in stile Macintosh. Il lettore � venduto con
un cavo di tipo Macintosh, ma cavi standard e convertitori sono
facilmente reperibili nel caso si usi un controller SCSI con
connettore Centronics o ad alta densit�.
Non ho visto un lettore SCSI interno, ma mi aspetto abbia un
connettore SCSI di tipo DIP a 50 pin con gli stessi due switch.
Ci si assicuri che l'indirizzo di destinazione scelto non sia in
conflitto con altri dispositivi SCSI presenti nello stesso bus. Ci si
assicuri inoltre che l'ultimo drive fisico della catena abbia la
terminazione attivata o di installare un terminatore esterno.
Se si ha un disco SCSI interno o un CD-Rom, e si connette il proprio
ZIP ad un controller gi� a disposizione, si dovrebbe controllare che
non ci siano altri terminatori nella scheda che debbano essere
rimossi. Solo le due terminazioni estreme del bus SCSI devono essere
terminate. Se il proprio bus � parzialmente interno e parzialmente
esterno, ci dovrebbe essere essere un terminatore nell'ultimo
dispositivo esterno ed uno nell'ultimo dispositivo interno, ma non ci
dovrebbero essere terminatori nella scheda stessa.
Assicurarsi che tutti i cavi siano ben fissati.
3.2.1. Il controller ZIP ZOOM
Iomega produce un controller SCSI chiamtato ZIP Zoom. Questo si basa
in pratica sulla famiglia di adattatori Adaptec AHA1520. Ha un
connettore esterno DB25F di tipo Macintosh, compatibile con il cavo
venduto assieme al lettore ZIP.
Linux supporta questo adattatore con il driver aha152x.
3.3. La versione SCSI Interna
Si installi l'hardware come descritto nella "Installation and
Reference Guide", annotando quale SCSI ID, IRQ e indirizzo di porta
I/O sono stati usati (queste informazioni saranno usate pi� tardi).
Le cose andranno subito lisce se il lettore ed il controller usano
diversi ID SCSI.
Si ricompili il kernel dopo aver configurato ed incluso il supporto
per 'SCSI', 'SCSI disk' e 'AHA152X/2825'. INSTALLARE IL NUOVO KERNEL
:-(
Si dermini qual � la riga di comando da passare al kernel:
aha152x=[I/O Port][,IRQ][,SCSI ID][,RECONNECT][,PARITY]
Per esempio:
aha152x=0x140,10,7,1
Se si usa LILO si aggiunga la riga di comando per il kernel al proprio
file lilo.conf, usando il comando append.
(ie. append = "aha152x=0x140,10,7,1")
Se si usa LOADLIN si aggiunga la riga di comando per il kernel al
comando usato per inizializzare loadlin.
(ie. loadlin c:\vmlinuz root=/dev/hda3 aha152x=0x140,10,5,1 ro)
3.4. Lo ZIP Plus - il driver IMM
Questa � una nuovissima versione del lettore ZIP esterno. Lo Zip Plus
non usa il driver ppa: usa invece il driver imm. Philippe Andersson
ha inviato questa eccellente sezione sul driver imm per lo Zip Plus.
Grazie Philippe.
Attenzione: lo sviluppo di questo driver � allo stato alpha, il che
significa che 1./ non lo si trover� nel normale albero di sorgenti del
kernel di linux (e, ovviamente, nemmeno si sar� in grado di
selezionarlo da make config e compagnia bella) e 2./ potrebbe non
funzionare nella propria configurazione. Ma non si abbia
paura...semplicemente lo si prenda e lo si testi.
Per prima cosa si ricompili il proprio kernel per includere le
seguenti cose:
� supporto per i moduli
� supporto SCSI
� supporto per dischi SCSI
� lp come modulo (se serve)
Si noter� che non si � selezionato alcun driver SCSI a basso livello.
Ok, va tutto bene...lo si compiler� separatamente pi� tardi.
Adesso, bisogna procurarsi il codice sorgente del driver dalla home
page di Dave Campbell (
http://www.torque.net/~campbell/imm.tar.gz).
La versione 0.17 � quella corrente mentre sto scrivendo questo
documento (agosto 98). Si faccia l'unzip e l'untar di questo da
qualche parte (ad esempio sotto /usr/src). Poi semplicemente, si
lanci make. Si otterr� il modulo di cui si ha bisogno (imm.o). Lo si
copi in /lib/modules/$(uname -r)/scsi.
Se � caricato il modulo lp (si controlli con lsmod(1)), lo si scarichi
(rmmod lp), e poi si carichi imm.o (insmod imm), e tutto dovrebbe
essere a posto.
Se il lettore ZIP non � connesso e alimentato quando si fa questa
operazione, si ricever� il messaggio "init_module: Device or resource
busy", e il modulo non sar� caricato (si potrebbe pensare che a questo
punto sia necessario spegnere il PC e connettore lo ZIP, in realt�
basta assicurarsi che il modulo non sia caricato e il lettore sia
spento, poi basta collegarlo, accenderlo e caricare il modulo).
Se lo ZIP � connesso ed acceso, ma non c'� un disco al suo interno, il
modulo si caricher� e si otterr� un messaggio che dice che non � in
grado di leggere la tavola delle partizioni del disco. Nessun
problema, in quanto la tavola delle partizioni sar� letta
automaticamente quando si inserisce uno ZIP.
Se c'era uno ZIP, verr� mostrata una serie completa di informazioni,
compreso un elenco delle partitizioni definite nel disco ed il loro
stato di protezione dalla scrittura. Ecco qui un esempio del
messaggio che si ottiene quando viene caricato il modulo:
vger:~# insmod imm
imm: Version 0.17
imm: Probing port 03bc
imm: Probing port 0378
imm: SPP port present
imm: ECP with a 16 byte FIFO present
imm: PS/2 bidirectional port present
imm: Passed Intel bug check.
imm: Probing port 0278
scsi0 : Iomega ZIP Plus drive
scsi : 1 host.
Vendor: IOMEGA Model: ZIP 100 PLUS Rev: J.66
Type: Direct-Access ANSI SCSI revision: 02
Detected scsi removable disk sda at scsi0, channel 0, id 6, lun 0
SCSI device sda: hdwr sector= 512 bytes. Sectors= 196608 [96 MB] [0.1 GB]
sda: Write Protect is off
sda: sda1
vger:~#
Un ultimo punto da sottolineare � che questa versione del driver
blocca anche la porta del lettore quando � montato il disco. Se viene
premuto il tasto di eject in questa situazione non succede niente, ma
il lettore se ne "ricorder�" ed espeller� il disco non appena viene
smontato.
3.5. Versione ATAPI
Per un certo periodo � stata in produzione una versione IDE del
lettore. Penso che adesso sia stata rimpiazzata dalla versione ATAPI.
Donald Stidwell mi ha spedito questi commenti sulla versione ATAPI.
Grazie Don.
Uso il lettore Zip ATAPI e funziona sia con il kernel 2.0.32 che con
il 2.0.33. L'ho usato sia sotto RH 5.0 che sotto OpenLinux 1.2 (la
distribuzione che uso attualmente). Per farlo funzionare sotto
OpenLinux, ho semplicemente abilitato il supporto per il floppy ATAPI
nel kernel. OpenLinux non ha questo supporto compilato di default.
Non � necessario nessun altro driver. Sar� montato come una
partizione estesa sulla partizione 4, i.e. il mio si monta su hdb4.
Lo monto sotto /mnt/zip con l'opzione noauto, sebbene sono sicuro che
non ci siano problemi reali con l'automount. Una piccola nota
sull'espulsione dei dischi: io smonto sempre il disco prima di
espellerlo.
Ci sono istruzioni pi� dettagliate per l'installazione della versione
ATAPI nel numero di maggio 1998 della Linux Gazette. Si veda la
sezione "2 cent tip".
<
http://www.linuxgazette.com/issue28/lg_tips28.html#atapi>
3.6. Versione IDE
Non ho usato la versione IDE. Eric Backus mi ha spedito questi
commenti. Grazie Eric.
Io ne ho uno. Mi � stato dato assieme al mio computer Getaway 2000
circa un anno fa. Penso che la maggior parte di questi lettori siano
stati venduti da grosse compagnie OEM come questa, prima che fosse
disponibile la versione ATAPI del lettore ZIP.
Le buone nuove su questo lettore: per supportarlo non � necessario
alcun modulo o modifica del kernel. Appare al kernel come un normale
disco fisso IDE. Io l'ho usato senza problemi con i kernel 2.0.31 e
2.0.32.
Le cattiva notizie su questo lettore: poich� non usa ATAPI, non pu�
usare la "SCSI-to-ATAPI translation", il che implica che non �
possibile usare gli mtools per proteggere in scrittura i dischi (o per
espellerli, per quanto possa importare).
4. Configurare un kernel per il lettore ZIP
Per usare un lettore ZIP con Linux, si deve avere un kernel
configurato con il supporto per il sistema SCSI, il supporto per i
dischi SCSI ed il supporto per il controller che si usa. Se non si ha
familiarit� con la compilazione del kernel, si dovrebbe dare un letta
al Linux Kernel HOWTO <
http://sunsite.unc.edu/mdw/HOWTO/Kernel-
HOWTO.html> per maggiori informazioni.
Si deve cominciare il processo di costruzione di un kernel con un
passo di configurazione. Qui vengono identificati i componenti
specifici del kernel di cui si ha bisogno. Il primo passo � un bel
cd /usr/src/linux. Ci sono diversi modi per fare la configurazione.
Sotto X windows io uso make xconfig. C'� anche make menuconfig o make
config per l'ambiente testo. Il modo pi� facile � con xconfig.
Nella sezione SCSI Support si imposti SCSI support = Y. Si imposti
pure SCSI disk support = Y.
Nella sezione SCSI low-level drivers si deve impostare IOMEGA Parallel
Port ZIP drive SCSI support = M. La M sta per modulo.
Nella sezione Character Devices si trovi e si imposti Parallell
Printer support = M.
Se non si � proprio sicuri di alcune di queste cose, si usi zdisk per
il passo di make. Questo construir� e installer� il kernel in un
floppy. Se si � cannato qualcosa, si avr� ancora un sistema avviabile
dal disco fisso.
Ora si costruisca il kernel con questi passi:
� make dep
� make clean
� make zImage oppure zlilo o zdisk
� make modules
� make mdoules_install
Suggerimento se si vuole registrare l'output del passo make zImage, si
pu� usare
make zImage 2>&1 | tee zImage.out
Questa � proprio una buona cosa da fare, in quanto in caso di errori
di compilazione o altri conflitti nella configurazione, si avr� un
file con i messaggi d'errore o gli errori di compilazione. Inoltre
ci� rende la richiesta d'aiuto molto pi� semplice.
� poi necessario caricare i moduli da qualche parte. Nel mio sistema
ho semplicemente aggiunto un paio di righe al file boot.local.
� insmod ppa
� insmod lp
Il mio sistema � una Suse 5.0 e questo file � in /etc/rc.d. La
posizione di questo file varier� da distribuzione a distribuzione, ma
ci sar� un file da qualche parte per fare le modifiche locali al
processo di avvio. Si dovrebbe usare il file che meglio si applica
alla propria distribuzione.
Ora si faccia lo shutdown ed il reboot.
Si possono costruire anche tutte le parti del sistema SCSI come
moduli. Se si fa questo, ci si assicuri di caricare scsi.o, poi sd.o
ed alla fine il driver per il proprio controller, prima di provare ad
accedere al lettore ZIP.
4.1. Versione SCSI
Se gi� si ha un disco SCSI nel proprio sistema, e si sta per
connettere il lettore ZIP allo stesso controller, non serve una
ulteriore configurazione del kernel. Diversamente, abbastanza
facilmente di dovr� costruire un nuovo kernel.
Se si sta per costruire un kernel per supportare la versione SCSI del
lettore ZIP, si dovrebbe selezionare il supporto SCSI ("SCSI support")
ed il supporto per i dischi SCSI ("SCSI disk support"). Si dovr�
inoltre selezionare un driver per la scheda di interfaccia che si
user�. Se si ha una ZIP Zoom, si selezioni il driver aha152x.
Ci si assicuri di leggere la documentqzione per il proprio adattatore
nello SCSI HOWTO ed in qualsiasi file README nella sottodirectory
driver/scsi dell'albero dei sorgenti di Linux. Si faccia attenzione
ai parametri di riga di comando che di possono usare per aiutare il
kernel ad inizializzare il proprio adattatore.
Per esempio, se si usa una scheda ZIP Zoom, si dovr� aggiungere
qualcosa del tipo
aha152x=0x340,11,7,1
al comando di boot (od includerlo nel proprio file /etc/lilo.conf in
una clausola append). Questo imposta l'indirizzo della porta e l'IRQ
della propria scheda ZIP Zoom - ci si assicuri che i numeri
corrispondano al modo in cui si sono impostati i jumper.
Si dovrebbe inoltre leggere il BOOTPROMPT HOWTO
<
http://sunsite.unc.edu/mdw/HOWTO/BootPrompt-HOWTO.html> di Paul
Gortmaker per informazioni sulla configurazione del kernel con LILO o
LOADLIN.
4.2. Il driver PPA per 1.2.13
Il kernel 2.0.x � stato rilasciato ormai da lungo tempo. Se si �
rimasti ancora al 1.2.13 o a qualsiasi cosa pi� vecchia del 2.0.x per
favore si faccia un bel upgrade. Non risponder� a nessuna domanda
riguardante queste vecchie release e dubito che qualsiasi sviluppatore
lo far�.
4.3. Il driver PPA per i kernel correnti
Dalla versione 1.3.74 il driver ppa � una parte standard del kernel.
Ci sono state alcune modifiche in altre parti del kernel verso la
1.3.78 che hanno richiesto un workaround temporaneo, ma dalla versione
1.3.86 il driver � stabile alla versione 0.26. Poich� ormai � in
azione il code-freeze per Linux 2.0, mi aspetto che il 0.26 sar� nel
prossimo kernel stabile.
Per creare un kernel con il supporto ppa, si includa il supporto per
SCSI, il supporto per i dischi SCSI e si selezioni il supporto per
Iomega ZIP / PPA-3 dalla lista degli adattatori SCSI a basso livello.
� possibile compilare il driver come modulo caricabile.
� possibile usare parametri in riga di comando in /etc/lilo.conf o con
insmod per regolare il driver. Tutto ci� � documentato in
drivers/scsi/README.ppa nell'albero dei sorgenti del kernel. Ne ho
fatto un breve sommario nel paragrafo seguente.
Se si vuole usare sia il driver lp che ppa sulla stessa porta
parallela, � necessario compilarli entrambi come moduli e caricarne
sempre solo uno alla volta quando necessario.
Le caratteristiche dei moduli caricabili di Linux stanno diventando
via via pi� potenti, e corrispondentemente pi� complesse. Come punto
di partenza, si dovrebbe leggere il file Documentation/modules.txt
nell'albero dei sorgenti del kernel.
4.4. Parametri in linea di comando di PPA
Se si ha ppa compilato all'interno del proprio kernel, � possibile
aggiustare i suoi parametri dalla riga di comando di LILO o LOADLIN
usando la seguente sintassi:
ppa=base[,speed_high[,speed_low[,nybble]]]
Dove base � l'indirizzo i/o della proprio porta parallela, speed_high
� la costante di temporizzazione per alcuni loop veloci nel driver,
speed_low � un parametro di temporizzazione simile per alcuni loop
lenti e nybble � un flag per forzare il driver ad usare la modalit� a
4 bit (nybble), anche se vuole fare diversamente.
Per esempio, i valori predefiniti possono essere specificati come:
ppa=0x378,1,6,0
5. Usare il lettore ZIP
Se si sono creati tutti i componenti richiesti, il kernel dovrebbe
riconoscere il proprio adattatore ed il lettore al boot. Se si sta
usando un modulo caricabile per il proprio lettore, la discussione che
segue � applicabile una volta che sia stato caricato il modulo.
In linea di massima la versione SCSI e parallela del lettore si
comportano nello stesso modo, tranne per il fatto che la versione
parallela � in qualche modo pi� lenta.
5.1. Identificazione del lettore all'avvio
Quando il proprio sistema si avvia dovrebbe mostrare diverse
infomarzioni a proposito del proprio controller, del proprio lettore e
del disco nel lettore. Se non si ha un disco nel lettore, mancheranno
alcune di queste informazioni e appariranno solamente quando si
inserir� un disco e poi si "tocca" il lettore (si fanno dei tentativi
di accesso). Si raccomanda agli utenti inesperti di avviare il
sistema con un disco nel lettore, in quanto in questo modo le cose
sono meno confuse !
Dove esattamente appaiono questi messaggi dipende da come �
configurato il proprio sistema. Spesso appariranno nella console di
sistema, ma potrebbero essere rediretti in un file di log come
/var/adm/messages. Nel caso non si riesca a trovarli da nessuna
parte, solitamente � possibile recuperare le ultime schermate di
messaggi del kernel con il comando dmesg.
Se si ha la necessit� di trovare qualcuno che possa aiutare, una copia
di queste informazioni � critica. Si provi a inviare quanti pi�
messaggi di log rilevanti si pu�, assieme con il proprio bug report.
Di seguito un esempio di come potrebbe essere un messaggio di log del
kernel:
scsi0 : PPA driver version 0.26 using 8-bit mode on port 0x378.
scsi : 1 host.
Vendor: IOMEGA Model: ZIP 100 Rev: N*32
Type: Direct-Access ANSI SCSI revision: 02
Detected scsi disk sda at scsi0, channel 0, id 6, lun 0
scsi : detected 1 SCSI disk total.
SCSI device sda: hdwr sector= 512 bytes. Sectors= 196608 [96 MB] [0.1 GB]
sda: Write Protect is off
Partition check: sda: sda1
Questo output � generato da un sistema 1.3.87 con un lettore ZIP su
porta parallela. L'output esatto varier� a seconda del proprio
controller SCSI e di quali altri dispositivi SCSI sono presenti nel
proprio sistema.
La prima riga mostra il messaggio di inizializzazione del driver a
basso livello per il proprio controller, in questo caso PPA. Quello
che segue sono le informazioni di identificazione restituite da
ciascun dispositivo trovato nel bus SCSI. La quinta riga riporta il
nome del device assegnato al lettore, in questo caso /dev/sda. E
l'ultima riga mostra il risultato della verifica delle partizioni
presenti sul disco nel lettore. Questo ne ha una sola, /dev/sda1.
Questi messaggi provengono da diversi moduli nel kernel. Se si ha pi�
di un controller SCSI, o diversi dischi, ognuna delle sezioni conterr�
ulteriori informazioni.
Se si usa un disco nuovo, proveniente direttamente dalla Iomega, la
verifica delle partizione dovrebbe mostrare un unica partizione,
/dev/sda4. Se si hanno altri dispositivi SCSI si deve essere
consapevoli che il lettore ZIP potrebbe essere assegnato a qualche
altro device, ad esempio /dev/sdb. Quindi si controllino i messaggi.
Se queste righe non compaiono, allora qualcosa non � bene configurato
o nel proprio hardware oppure nel kernel. Si controlli tutto
attentamente prima di inviare una mail.
Se non appare la riga scsi0:, allora non si � configurato il proprio
controller ed il lettore correttamente. Alcuni driver daranno dei
suggerimenti su cosa pu� essere andato storto. Se il proprio lettore
non � rilevato, allora probabilmente si ha un problema di cavo. Se
non � assegnato un nome al lettore, allora probabilmente si �
dimenticato di includere il supporto per i dischi SCSI quando si �
configurato il kernel.
Si dia un'occhiata ai file README in drivers/scsi e allo SCSI HOWTO
per altri suggerimenti sulla risoluzione dei problemi.
5.2. Fdisk, mke2fs, mount, ecc.
Una volta noto il nome del device per il proprio lettore ZIP, si � a
posto. Si pu� manipolare il disco con i normali comandi di gestione
dei dischi di Linux. fdisk (o anche cfdisk) � usato per manipolare le
tavole delle partizioni sul disco. mke2fs pu� essere usato per
formattare una partizione con il filesystem ext2, il pi� comunemente
usato in Linux. mount � usato per connettere una partizione
formattata nella propria gerarchia di directory.
Se non si ha familiarit� con questi strumenti, si dovrebbero studiare
le relative pagine di manuale. Si faccia attenzione poich� adesso
come adesso esistono diverse versione del programma fdisk.
Descriver� due scenari comuni.
5.3. Un disco DOS preformattato
Se si ha un disco ZIP con una struttura DOS dei file originariamente
creata dagli strumenti della Iomega, l'analisi delle partizioni
dovrebbe dire che il disco ha una sola partizione, /dev/sda4.
Si deve creare un posto dove montare il disco, diciamo /zip, e poi
montarlo come un filesystem MS-DOS:
mkdir /zip
mount -t vfat /dev/sda4 /zip
Si potrebbe usare msdos invece di vfat. vfat supporta i nomi lunghi
per i file mentre msdos no. Ora, i file nel disco dovrebbero apparire
in /zip. Mentre il disco � montato, non si sar� in grado di
rimuoverlo. Quando si ha finito con il disco si pu� smontarlo per
rilasciarlo e staccarlo dalla propria gerarchia di directory.
umount /zip
Una volta creato il mount point /zip, non � necessario ricrearlo
ancora, e quindi si pu� riutilizzare pi� tardi per montarci
qualcos'altro.
5.4. Riformattazione come un disco Linux nativo
Se si vuole cancellare un disco ZIP e creare un file system nativo di
Linux, di deve usare fdisk sull'intero disco:
fdisk /dev/sda
e cancellare qualsiasi partizione esistente (con il comando d). Poi
si crei una nuova partizione con il comando n. La si crei primaria e
con numero di partizione 1, poi si usi w per scrivere la tavola delle
partizioni sul disco e si esca con q.
Si formatti la partizione con
mke2fs /dev/sda1
(L'1 � il numero che si � dato a questa partizione con fdisk). Ora si
pu� montare il disco:
mount -t ext2 /dev/sda1 /zip
(riusando il mount point creato in precedenza).
5.5. Il disco ZIP Tools
C'� un altro po' di lavoro da fare se si vuole usare il disco che
viene venduto con il lettore ZIP. Prima della distribuzione viene
abilitata la protezione software dalla scrittura. Molti hanno per
prima cosa sbloccato il disco sotto DOS prima di provare ad usarlo con
Linux. Linux non pu� accedere a un disco bloccato, e questo
dev'essere sbloccato con gli strumenti della Iomega.
Un programma nativo per Linux per gestire la caratteristica di
protezione dalla scrittura ed altre cose, si pensa sar� presto
disponibile.
6. Prestazioni
Con la versione standard dei kernel 2.0.x si riceve la versione 0.26
del programma ppa.c. Questo � un programma semplice ma molto
affidabile. � stato sottoposto ad un uso intenso ed ora funziona
piuttosto bene. La sola cosa brutta di questo programma � che non �
molto veloce. Sulla mia macchina ho la versione 2.0.30 del kernel e
due porte parallele. � pure una macchina da pochi soldi con un pentium
133, 16 mega di memoria e un disco eide della maxtor da 5 giga. La
macchina mi � costata 500 dollari americani mentre il disco ne costa
250. Sono tirchio ma non troppo.
Ho messo il lettore ZIP nella seconda porta e la stampante nella
prima. La seconda era una vecchia scheda senza la modalit� epp. Ci�
fa s� che il lettore funzioni in modalit� a 4 bit.
Per verificare le prestazioni ho copiato il file tar del netscape dal
disco fisso allo ZIP. Questo file � circa 10.6 mega. Per terminare
l'operazione ci sono voluti 7 minuti e 15 secondi. Per trasferire
dallo ZIP al disco fisso ci sono voluti 7 minuti. Non proprio
esaltaltante, vero?
Allora ho fatto 2 modifiche. Per prima cosa ho passato il lettore ZIP
nella prima porta e sono andato nel BIOS ed ho impostato la modalit�
EPP per la prima porta. Allo stesso tempo ho collegato la stampante
nella seconda porta.
La seconda modifica che ho fatto � stato di scaricarmi la nuova
versione del programma dalla pagina di David Campbells
<
http://www.torque.net/~campbell/>. Poi l'ho installato. Si dia
un'occhiata al readme incluso.
Poi ho eseguito ancora lo stesso test copiando il file tar di Netscape
nel e dal lettore ZIP. La copia nel disco fisso ha durato 1:55
minuti. Dal disco fisso allo ZIP invece c'ha messo 1 minuto giusto.
Si confrontino questi valori con i 7:15 minuti e 7:00 minuti del
vecchio programma. Si noti il notevole incremento di prestazioni
rispetto alla versione 0.26 del programma. Tutto ci� inoltre � stato
fatto usando il disco ZIP con un file system vfat.
Poi ho formattato un disco ZIP con il formato ext2. Ho eseguito
ancora lo stesso test. La copia verso il disco fisso ha durato solo
50 secondi, mentre la copia dal disco fisso al disco ZIP solo 40.
Sommario delle Prestazioni
Per questo test ho spostato un file da 10.6 mega. La modalit� standard
a 4 bit della porta e la versione 0.26 del programma � risultata la
combinazione pi� lenta con tempi di 7:00 e 7:15 minuti.
Il nuovo programma (1.41) e la modalit� EPP con un filesystem ext2 �
la combinazione pi� veloce con tempi di 50 e 40 secondi.
7. Filza di Assilli Quoditiani (aka Frequently Asked Questions)
Queste sono alcune delle domande che sono state fatte un sacco di
volte. Invito a leggere le risposte prima di rifarle un'altra volta!
7.1. Posso collegare una stampante nel lettore ZIP per porta paral�
lela?
Si, ma: attualmente non � possibile avere contemporaneamente i driver
lp e ppa attivi sulla stessa porta parallela. Durante lo sviluppo
iniziale del gestore � stato progettato un protocollo di condivisione
delle risorse, ma non sar� dispobile prima del rilascio di Linux 2.2.
Se si ama vivere sul filo del rasoio, si prenda il kernel 2.1.x e si
pu� cos� avere la condivisione della porta. Si veda
<
http://www.cyberelk.demon.co.uk/parport.html>
Il modo pi� semplice per fare questa cosa con un kernel 2.0.x � di
avere due porte parallele. Ho comprato la mia seconda per circa 15
dollari e funziona alla grande. Si pu� usarne una per stampare e
l'altra per lo ZIP. Semplicemente si compili un kernel con sia il
driver ppa che il driver lp come moduli. Uso la versione pi� nuova
(1.41) di ppa, quindi semplicemente carico ppa per primo (insmod ppa).
Questo trova il lettore zip nella prima porta. Poi carico lp (insmod
lp) e questo assegna la stampante alla seconda porta.
Se si usa la versione 0.26 del programma allora si includa sia lp che
ppa come parte del kernel (non come moduli). Poi si mettano i comandi
di configurazione appropriati nella riga di comando del proprio
kernel. Per esempio, se si usa LILO e si ha una stampante
all'indirizzo 0x378 e il lettore ZIP a 0x3bc si possono aggiungere le
seguenti righe al proprio file /etc/lilo.conf.
append = "lp=0x378 ppa=0x3bc"
7.2. C'� l'intenzione di supportare le porte EPP/ECP in PPA?
La versione 0.26 del programma non supporta EPP. La versione 1.41
supporta EPP. Questo programma � molto pi� veloce. Si veda la
sezione sulle prestazioni per maggiori dettagli.
7.3. Possono eseguire Linux da un lettore ZIP?
C'� gente che l'ha fatto. Questo sembra una gran cosa per fare un
ottimo disco di ripristino o per testare un'installazione.
<
http://sunsite.unc.edu/LDP/HOWTO/mini/ZIP-Install.html>
7.4. Posso fare il boot da un lettore ZIP?
Dipende da cosa si usa come controller. Se il proprio controller ha
una ROM BIOS con il codice per fare il boot dai target 5 o 6, allora
s�, si pu� fare il boot da uno ZIP SCSI. Non � possibile fare il boot
da uno ZIP su porta parallela.
Se si ha DOS nel proprio disco principale e si vuole avviare Linux da
un disco ZIP, lo si pu� fare usando LOADLIN. L'immagine del proprio
kernel deve essere da qualche parte nel disco DOS, ma il resto del
proprio sistema Linux pu� essere nello ZIP. Ci si assicuri che il
kernel che si usa abbia i giusti driver compilati al suo interno.
Per quel che ne so, non c'� nessun floppy di avvio dell'installazione
per una qualsiasi delle distribuzioni pi� popolari che contenga il
driver per lo ZIP su parallela.
7.5. Perch� Iomega usa 4 come numero della partizione?
Questa � una delle domande pi� popolari, ma non penso che nessuno
abbia la risposta definitiva. Probabilmente non c'� una vera ragione.
7.6. Posso fare in modo che il disco sia montato all'avvio?
Tutto quello che c'� da fare � aggiungere una riga al proprio file
/etc/fstab. Per esempio, se si ha sempre un disco DOS nel lettore
quando si fa il boot, si pu� mettere
/dev/sda4 /zip vfat defaults 0 0
in fstab. A seconda di come � fatta la propria distribuzione, gli
script di inizializzazione potrebbero provare ad eseguire fsck sulle
partizioni elencate nel proprio fstab. Si rammenti che ci� potrebbe
creare problemi se si dimentica di mettere il disco nel lettore quando
si avvia, oppure se si mette il disco sbagliato.
7.7. Cosa succende se non c'� nessun disco quando faccio il boot?
Il kernel prover� a leggere la tavola delle partizioni, ma
l'operazione andr� in time out. Non � niente di cui preoccuparsi.
Una volta inserito un disco e provato a farci qualcosa il kernel si
accorger� che adesso c'� e rilegger� la tavola delle partizioni.
SUGGERIMENTO: quando si cambiano i dischi, � sempre una buona idea
usare fdisk per verificare la struttura delle partizioni nel nuovo
disco.
Il BIOS in alcuni controller SCSI prover� a leggere la tavola delle
partizioni del proprio disco durante il boot del sistema. Se non si
pu� disabilitare questo controllo, si sar� costretti ad effettuare
sempre il boot con un disco nel lettore.
7.8. Posso usare il lettore su porta parallela con un effettivo disco
SCSI?
L'adattatore da parallela a SCSI PPP-3 � implementato come un unico
chip ASIC che Iomega chiama VPIO. � inserito nella scheda di
controllo del lettore ZIP. � effettivamente presente un bus SCSI, ma
non in una forma utilizzabile.
Sebbene non abbia provato a confrontare le due schede, sembra logico
che il VPIO rimpiazzi il circuito convenzionale di buffering elettrico
che sarebbe richiesto se il bus SCSI fosse esteso al di fuori
dell'involucro.
7.9. Posso usare PPA con i lettori di nastri paralleli della Iomega?
No. Questi sono lettori floppy-tape. Non c'entra lo SCSI.
Diversi hanno manifestato interesse nell'applicare il miei metodi per
provare a determinare il protocollo e sviluppare il driver per questi
tape. Il primo passo � riuscire ad avere il driver per DOS che
funzioni sotto DOSemu. Non ho ancora notizia di qualcuno che abbia
avuto successo nel farlo.
7.10. Il PPA funzioner� con il SyQuest EZ135 su porta parallela?
No. Il EZ135 � un disco IDE con un convertitore da parallela ad IDE
ShuttlePort al suo interno.
Comunque � stato fatto un po' di lavoro su questo driver. Si veda
<
http://www.torque.net/linux-pp.html>
8. Dove trovare ulteriori informazioni
Le versioni pi� recenti del programma di gestione per lo zip su porta
parallela (ppa.c) e le informazioni tecniche correnti su tale driver
possono essere trovare a
<
http://www.torque.net/~campbell/>
Le informazioni su molti driver per dispositivi esterni su porta
parallela possono essere trovate a
<
http://www.torque.net/linux-pp.html>
Informazioni sulla condivisione della porta parallela e sulla porta
parallela passante si trovano a
<
http://www.cyberelk.demon.co.uk/parport.html>
Installazione di Linux da un lettore zip (per macchine senza un CD)
<
http://sunsite.unc.edu/mdw/HOWTO/mini/Install-From-ZIP.html>
Un'interfaccia X per il programma ziptool pu� essere trovata a
<
http://www.scripps.edu/~jsmith/jazip/>
Informazioni sulla configurazione di Lilo le si pu� trovare a
<
http://sunsite.unc.edu/mdw/HOWTO/mini/LILO.html>
Informazioni sull'uso dei bootprompt le si pu� trovare a
<
http://sunsite.unc.edu/mdw/HOWTO/BootPrompt-HOWTO.html>
Se si vuole installare Linux sullo Zip ed eseguire il sistema dallo
Zip
<
http://sunsite.unc.edu/LDP/HOWTO/mini/ZIP-Install.html>
Le pagine web della Iomega sono a
<
http://www.iomega.com/>.
Se si cercano informazioni generiche sulla programmazione della porta
parallela del proprio PC, non � male visitare
<
http://www.lvr.com/parport.htm>