Este es un tema para el que convendría que leyera el SCSI-Howto, pero como no hay disponible traducción, haré una breve introducción, necesaria para poder especificar parámetros necesarios al software que usaremos.
Básicamente, para lo que necesitamos, hemos de saber de la existencia de
los dispositivos de bloque, /dev/scdX
o /dev/srX
, y los
dispositivos genéricos, /dev/sgX
:
En lo que a nosotros atañe, tanto para extraer audio, como para grabar
bajo Linux, el kernel ha de tener activado Generic SCSI Support
, que
proporciona la interfaz ASPI necesaria.
Pero, ¿de qué manera determina Linux cómo ha de tratar un mismo dispositivo? dependiendo de a qué fichero de dispositivo le hagamos referencia; si es un fichero de dispositivo de bloques, lo tratará como tal, y si es genérico, utilizará comandos ASPI.
El dispositivo genérico de cada unidad conectada al bus SCSI se determina
mediante su ID SCSI, haga cat /proc/scsi/scsi
para ver un listado
de los disponibles en su sistema, por ejemplo:
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
Vendor: QUANTUM Model: FIREBALL1280S Rev: 630G
Type: Direct-Access ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 01 Lun: 00
Vendor: QUANTUM Model: FIREBALL ST4.3S Rev: 0F0C
Type: Direct-Access ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 02 Lun: 00
Vendor: PIONEER Model: CD-ROM DR-U06S Rev: 1.05
Type: CD-ROM ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 04 Lun: 00
Vendor: YAMAHA Model: CDR102 Rev: 1.01
Type: WORM ANSI SCSI revision: 02
Lo que nos interesa es la línea Host: scsi0 Channel: XX Id: XX Lun: XX
de cada dispositivo; concretamente Id:
.
El sistema asigna dinámicamente dispositivos sgX
por orden de ID
a los presentes en ese mismo instante; en el ejemplo anterior:
00 ---> /dev/sga
01 ---> /dev/sgb
02 ---> /dev/sgc
04 ---> /dev/sgd
cuando decimos dinámicamente, nos referimos a que si por ejemplo, tiene una unidad externa magneto óptica, un zip, o similar, en el ID 03, la enciende, y hace que el kernel reescanee el bus, los dispositivos ahora serían:
00 ---> /dev/sga
01 ---> /dev/sgb
02 ---> /dev/sgc
03 ---> /dev/sgd
04 ---> /dev/sge
Ahora, la grabadora sería /dev/sge
en lugar de /dev/sgd
como antes.
Con lo que queremos decir que hay que tener mucho cuidado con
la adición de
dispositivos SCSI «al vuelo» y el uso de los sgX
.
En el caso concreto que nos ocupa, nos interesan los dispositivos ROM:
/dev/scdX
o la nomenclatura nueva, /dev/srX
.
Aquí el primer fichero de dispositivo corresponderá al primer CDROM SCSI
(incluyendo grabadoras) SCSI disponible en el sistema, /dev/sr0
,
/dev/sr1
será el segundo, etc; da igual el ID SCSI que tenga, o
en el bus SCSI que esté.
En entornos *nix existe cierta notación para identificar dispositivos SCSI:
Numero_Bus_SCSI,ID_SCSI_dispositivo,LUN_dispositivo
El LUN es un parámetro que siempre va a ser 0
, menos en el caso
improbable de que Vd disponga de un cargador de CDs, o un robot cambiador
de magneto-ópticos o de cintas.
Por tanto, un dispositivo que tuviese el ID 4
en la primera
controladora SCSI del sistema sería el dispositivo SCSI del sistema
0,4,0
.