Eu tive o mesmo problema. No meu caso, a SMART estava funcionando corretamente no dispositivo há anos enquanto usava o Ubuntu 12.04 , e depois no Ubuntu 14.04 aconteceu exatamente o que você diz na pergunta. p>
O problema está relacionado a um novo módulo do kernel que foi introduzido no Linux Kernel 3.15 chamado uas
(USB anexado SCSI ) (veja anúncio de lançamento ).
Esse módulo é agora o responsável pelo gerenciamento de dispositivos de armazenamento em massa USB. Existe um tópico onde as pessoas reclamam que uas
no kernel 3.15 está causando falhas nos dispositivos USB. Outro diz que pode ser a causa dos problemas de S.M.A.R.T.
Felizmente, esses problemas parecem ter desaparecido no kernel 3.19 (que estou usando), pois meu dispositivo está sendo detectado corretamente. Apenas o problema S.M.A.R.T permanece.
Para corrigir isso, você precisa desativar o uso do módulo uas
para o dispositivo em questão.
Desativar uas
sem reinicializar
Primeiro, desconecte todos os dispositivos USB que possam estar usando. Em seguida, remova os módulos uas
e usb-storage
:
sudo modprobe -r uas
sudo modprobe -r usb-storage
Em seguida, carregue o módulo usb-storage
com um parâmetro que diz para não usar uas
para um determinado dispositivo:
sudo modprobe usb-storage quirks=VendorId:ProductId:u
VendorId
e ProductId
devem ser substituídos pelo fornecedor do dispositivo e pelo ID do produto, que podem ser obtidos com o comando lsusb
(eles são os caracteres após ID
).
Por exemplo, tenho o seguinte dispositivo:
Bus 002 Device 011: ID 0bc2:3320 Seagate RSS LLC SRD00F2 [Expansion Desktop Drive]
Assim, meu ID de fornecedor é 0bc2
e meu ID de produto é 3320
. Meu comando é:
sudo modprobe usb-storage quirks=0bc2:3320:u
O último u
indica usb-storage
para ignorar uas
para o dispositivo (consulte origem ).
Neste ponto, você pode inserir o dispositivo USB, e ele não saberá usar uas
, fazendo com que S.M.A.R.T funcione corretamente. Você verá linhas como estas em dmesg
ao inserir o dispositivo USB:
usb 2-2: UAS is blacklisted for this device, using usb-storage instead
usb-storage 2-2:1.0: USB Mass Storage device detected
usb-storage 2-2:1.0: Quirks match for vid 0bc2 pid 3320: 800000
scsi host12: usb-storage 2-2:1.0
Torne a mudança permanente
O truque anterior só vai durar até você reiniciar o sistema. Para torná-lo persistente, você precisa seguir as etapas descritas aqui , que eu copio abaixo:
Primeiro, crie um arquivo chamado ignore_uas.conf
no diretório /etc/modprobe.d/
com o seguinte conteúdo:
options usb-storage quirks=VendorId:ProductId:u
Como antes, substitua VendorId
e ProductId
pelo fornecedor do dispositivo e pelo ID do produto obtido de lsusb
.
Em seguida, regenere seu disco virtual inicial:
mkinitcpio -p linux
Por fim, reinicie o seu computador.