Eu tive o mesmo problema. No meu caso, a SMART trabalhava corretamente no dispositivo há anos enquanto usava o Ubuntu 12.04 e, no Ubuntu 14.04 , acontecia exatamente o que você dizia na pergunta.
O problema está relacionado a um novo módulo do kernel que foi introduzido no Linux Kernel 3.15 chamado uas
(USB Attached SCSI ) (consulte o comunicado de lançamento ).
Esse módulo agora é responsável pelo gerenciamento de dispositivos de armazenamento em massa USB. Há um tópico em que as pessoas reclamam que uas
no kernel 3.15 está causando a falha de seus dispositivos USB. Outro diz que pode ser a causa de problemas SMART.
Felizmente, esses problemas parecem ter desaparecido no kernel 3.19 (que estou usando), pois meu dispositivo está sendo detectado corretamente. Somente o problema SMART permanece.
Para corrigi-lo, você precisa desativar o uso do uas
módulo para o dispositivo especificado.
Desativar uas
sem reiniciar
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 usb-storage
módulo com um parâmetro que diga para não usar uas
em um determinado dispositivo:
sudo modprobe usb-storage quirks=VendorId:ProductId:u
VendorId
e ProductId
deve ser substituído pelo fornecedor do dispositivo e pela ID do produto, que pode ser obtida com o lsusb
comando (são os caracteres a seguir ID
).
Por exemplo, eu tenho o seguinte dispositivo:
Bus 002 Device 011: ID 0bc2:3320 Seagate RSS LLC SRD00F2 [Expansion Desktop Drive]
Portanto, meu ID de fornecedor é 0bc2
e meu ID de produto é 3320
. Meu comando é:
sudo modprobe usb-storage quirks=0bc2:3320:u
O último u
diz usb-storage
para ignorar uas
o dispositivo (consulte a fonte ).
Nesse ponto, você pode inserir o dispositivo USB e ele saberá não usá-lo uas
, fazendo o SMART funcionar corretamente. Você verá linhas como estas 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
Tornar a mudança permanente
A peculiaridade anterior durará apenas até você reiniciar o sistema. Para torná-lo persistente, você precisa seguir as etapas descritas aqui , que eu copio abaixo:
Primeiro, crie um arquivo nomeado ignore_uas.conf
no /etc/modprobe.d/
diretório 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 lsusb
.
Em seguida, regenere seu ramdisk inicial:
mkinitcpio -p linux
ou, nas versões mais recentes do Ubuntu:
sudo update-initramfs -u
Finalmente, reinicie o seu computador.
Edit: Mais informações sobre o problema e outra maneira de contorná-lo sem desativar o uas (que possui uma taxa de transferência melhor do que o armazenamento USB) podem ser encontradas aqui: https://www.smartmontools.org/ticket/971#comment:12
Parece que o kernel está SAT ATA PASS-THROUGH
na lista negra de alguns dispositivos quando rodando no modo uas, pois eles quebraram o firmware.
Portanto, a lista negra pode ser desabilitada (por seu próprio risco) usando o método anterior que mencionei na resposta, mas removendo a final u
da peculiaridade, ou seja:
quirks=VendorId:ProductId:
Observe, no entanto, que eu não testei essa abordagem.