O problema
Eu tenho um Overland ArcVault conectado ao meu sistema (na verdade, uma máquina virtual, com a placa SCSI autônoma à qual está conectada no modo de passagem), mas parece que os nós do dispositivo de fita nomeados (algo como /dev/st0
ou /dev/nst0
) eu esperaria ver não estão sendo criados e os poucos nós criados não funcionam totalmente corretamente.
Em particular, vejo cinco dispositivos sendo criados, /dev/sg0
através do sg4
.
sg0, 1
e 2
representam as unidades de disco virtuais conectadas à VM.
sg4
é o dispositivo que representa a própria biblioteca de fitas,e funciona corretamente- isto é, posso usar comandos mtx
para controlá-lo.
Pelas mensagens de inicialização, sg3
é a própria unidade, mas resiste a todas as tentativas de acesso. As tentativas de fazer coisas como mt -f /dev/sg3 rewind
sempre retornam um Operation not permitted
erro. Verifiquei que a biblioteca montou uma fita na unidade e tentei isso com todos os sg*
dispositivos.
Também existe um /dev/tape/by-id/scsi-200900d09126c0024
, mas este é apenas um link simbólico para a biblioteca em sg4
.
A questão
Como eu realmente acesso as fitas e por que meu sistema não consegue captá-las?
O fundo
lsscsi
[1:0:0:0] cd/dvd NECVMWar VMware IDE CDR10 1.00 /dev/sr0
[2:0:0:0] disk VMware Virtual disk 1.0 /dev/sda
[2:0:1:0] disk VMware Virtual disk 1.0 /dev/sdb
[3:0:1:0] tape HP Ultrium 4-SCSI W51H -
[3:0:1:1] mediumx OVERLAND NEO Series 0510 -
(nota: nenhum nó de dispositivo especial criado)
dmesg relevante
[ 3.666897] scsi host3: ioc0: LSI53C1020A A1, FwRev=01032700h, Ports=1, MaxQ=255, IRQ=16
[ 4.558084] scsi 3:0:1:0: Sequential-Access HP Ultrium 4-SCSI W51H PQ: 0 ANSI: 5
[ 4.558334] scsi target3:0:1: Beginning Domain Validation
[ 4.565558] scsi 3:0:1:0: mptspi: ioc0: IDP:ON
[ 4.565635] scsi 3:0:1:0: mptspi: ioc0: IDP:ON
[ 4.565711] scsi 3:0:1:0: mptspi: ioc0: IDP:ON
[ 4.565787] scsi 3:0:1:0: mptspi: ioc0: IDP:ON
[ 4.565863] scsi 3:0:1:0: mptspi: ioc0: IDP:ON
[ 4.565938] scsi 3:0:1:0: mptspi: ioc0: IDP:ON
[ 4.566013] scsi 3:0:1:0: mptspi: ioc0: IDP:ON
[ 4.566088] scsi 3:0:1:0: mptspi: ioc0: IDP:ON
[ 4.566164] scsi 3:0:1:0: mptspi: ioc0: IDP:ON
[ 4.624137] scsi target3:0:1: Ending Domain Validation
[ 4.624361] scsi target3:0:1: FAST-160 WIDE SCSI 320.0 MB/s DT IU RTI PCOMP (6.25 ns, offset 64)
[ 4.628877] scsi 3:0:1:1: Medium Changer OVERLAND NEO Series 0510 PQ: 0 ANSI: 5
[ 7.888235] scsi 3:0:1:0: Attached scsi generic sg3 type 1
[ 7.888784] scsi 3:0:1:1: Attached scsi generic sg4 type 8
(então a unidade de fita vive em 3:0:1:0, o que parece que seria sg3
)
fita info, sg4
Product Type: Medium Changer
Vendor ID: 'OVERLAND'
Product ID: 'NEO Series '
Revision: '0510'
Attached Changer API: No
SerialNumber: '2B31000036'
SCSI ID: 1
SCSI LUN: 1
Ready: yes
fita info, sg3
Product Type: Tape Drive
Vendor ID: 'HP '
Product ID: 'Ultrium 4-SCSI '
Revision: 'W51H'
Attached Changer API: No
SerialNumber: 'MXP113433K'
MinBlock: 1
MaxBlock: 16777215
SCSI ID: 1
SCSI LUN: 0
Ready: yes
BufferedMode: yes
Medium Type: Not Loaded
Density Code: 0x46
BlockSize: 0
DataCompEnabled: yes
DataCompCapable: yes
DataDeCompEnabled: yes
CompType: 0x1
DeCompType: 0x1
BOP: yes
Block Position: 0
Partition 0 Remaining Kbytes: 800226
Partition 0 Size in Kbytes: 800226
ActivePartition: 0
EarlyWarningSize: 0
NumPartitions: 0
MaxPartitions: 0
(tipo médio: não carregado?!)
editar 1
Mais algumas pesquisas, parece que o st
módulo do kernel responsável por controlar as unidades de fita não está carregado, nem posso carregá-lo.
modprobe: ERROR: ../libkmod/libkmod-module.c:809 kmod_module_insert_module() could not find module by name='st'
modprobe: ERROR: could not insert 'st': Function not implemented
modprobe: ERROR: ../libkmod/libkmod-module.c:959 command_do() Error running install command for st
modprobe: ERROR: could not insert 'st': Operation not permitted
Existe um pacote apt contendo este módulo?
Responder1
O kernel genérico que vem com o Ubuntu não contém o st
módulo responsável por controlar as unidades de fita. Esse módulo pode ser encontrado no pacote 'extra' do kernel.
apt-get install linux-image-extra-$(uname -r)
modprobe st
E um dmesg
depois-
[57218.963458] st: Version 20101219, fixed bufsize 32768, s/g segs 256
[57218.966611] st 3:0:1:0: Attached scsi tape st0
[57218.966614] st 3:0:1:0: st0: try direct i/o: yes (alignment 512 B)
[57218.991321] st 3:0:1:0: [st0] Block limits 1 - 16777215 bytes.
E tudo está certo com o mundo :)
Além: esse é o tipo de coisa que faria bem em ser incluída na documentação do Ubuntu. Eu esperaria que uma imagem de instalação do servidor já viesse com coisas como módulos de unidade de fita ...