last update: 29 / november / 2002

GNU/Linux e autoloader si ricomincia...

[Molti mesi fa ho scritto un articolo (Pluto Journal n° 37) sulla mia esperienza di installazione di un unità autoloader in un server IBM con GNU/Linux distribuzione Red Hat 6.2.
Qualche mese dopo, in seguito ad un aggiornamento alla Red Hat 7.2 (e successivamente alla 7.3), ho incontrato dei problemi. In particolare non veniva riconosciuta la parte robotica dell'autoloader.
Mi ritrovavo nuovamente con una costosissima unità a nastro nella quale si dovevano comunque cambiare i nastri a mano.]

La situazione sembrava impossibile da risolvere per una serie di motivi. Non ultimi la necessità che il server in questione fosse disponibile per gli utenti 24x7 (e quindi mi trovavo nell'impossibilità di fare dei test) ed il fatto che ne IBM ne Red Hat, interpellate sull'argomento, davano risposte concrete.
Oltre a ciò cominciavo a ricevere delle mail da persone che, dopo avere letto il primo articolo, mi chiedevano suggerimenti per risolvere una situazione analoga, se non a volte identica, alla mia.

Uno scambio di mail con una di queste persone (Massimo Albonetti) ha portato ad una collaborazione via web. Poi qualche mio suggerimento, i suoi test e la sua pazienza hanno portato alla soluzione del problema. Massimo ha successivamente scritto le note che seguono (e che ho appena cercato di introdurre) per aiutare tutti coloro che si sono trovati nello stesso guaio. Riporto quindi le sue parole e la sua esperienza:


Dopo aver effettuato l'installazione di RedHat 7.3 l'unità Autoloader veniva vista come una normale unità DDS, si riusciva a fare le copie con il comando tar cvf /dev/st0 ma non si riusciva a comandare il dispositivo 'changer'.
Di seguito elenco brevemente i passaggi necessari per far funzionare un'unità DDS/4 Autoloader 120/240 GB montata su un @server 255 di Ibm su cui è stato installato redHat 7.3.

Punto 1 Bisogna assicurarsi che la scheda scsi sia configurata in modo che riconosca più unità logiche (LUN) sul canale a cui è collegato l'Autoloader.
Se in fase di avvio del server compare un messaggio del tipo:
00 B 6 0 SEAGATE DAT06241-XXX 80.0 16
00 B 6 1 SEAGATE DAT06241-XXX 80.0 16
La scheda scsi è configurata correttamente, se invece compare un messaggio del de tipo:
00 B 6 0 SEAGATE DAT06241-XXX 80.0 16
Bisogna entrare in configurazione della scheda scsi (Di solito premendo Ctrl-A quando il server si sta avviando) e configurare correttamente la scheda scsi

Punto 2 A server avviato, se il kernel e configurato corretamente, digitando il comando
cat /proc/scsi/scsi
deve comparire un messaggio del tipo
  Host: scsi1 Channel: 00 Id: 06 Lun: 00
  Vendor: SEAGATE  Model: DAT    06241-XXX Rev: 8240
  Type:   Sequential-Access                ANSI SCSI revision: 03
  Host: scsi1 Channel: 00 Id: 06 Lun: 01
  Vendor: SEAGATE  Model: DAT    06241-XXX Rev: 8240
  Type:   Medium Changer                   ANSI SCSI revision: 03 

Se invece compare un messaggio del tipo
  Host: scsi1 Channel: 00 Id: 06 Lun: 00
  Vendor: SEAGATE  Model: DAT    06241-XXX Rev: 8240
  Type:   Sequential-Access                ANSI SCSI revision: 03

vuol dire che il kernel non intercetta l'unità Media Changer il motivo è che il kernel non è stato configurato correttamente. Bisogna allora entrare in configurazione del Kernel e abilitare il seguente parametro
  CONFIG_SCSI_MULTI_LUN=y 
Bisogna ora ricompilare il Kernel.

Punto 3 Arrivato a questo punto il kernel riconosce l'unità Media Changer ma non ha nessun drive per gestirla. Bisogna allora scaricare da http://www.strusel007.de/linux/changer.html il driver. Per installare il driver bisogna prima fare una Patch del kernel, poi configurare il Kernel in modo che carichi il modulo del driver scsi settando il parametro
  CONFIG_CHR_DEV_SCH=m
Bisogna ora ricompilare il Kernel.
A questo punto l'Autoloader deve funzionare, usando i comandi contenuti nel software scaricato si riesce a gestire l'unita Autoloader.

Secondo ulteriori note inviatemi da Massimo il comando mtx non sembra funzionare perchè sembra che mtx si aspetti un device /dev/sg , invece della soluzione adottata del device /dev/sch.
Nel Software che contiene il driver, comunque, ci sono anche dei programmi che gestiscono il media changer.
Spero che queste brevi note possano aiutarVi a risolvere i Vostri problemi con gli autoloader. Per quel che mi riguarda rappresentano uno splendido esempio di come attraverso internet e il software opensource si possa collaborare per risolverli.

di Massimo Albonetti
e Rudi Giacomini Pilon