У меня такая же проблема. В моем случае SMART работал должным образом на устройстве в течение многих лет при использовании Ubuntu 12.04 , а затем под Ubuntu 14.04 произошло именно то, что вы говорите в вопросе.
Проблема связана с новым модулем ядра, который был представлен в Linux Kernel 3.15 и называется uas(USB Attached SCSI ) (см. Объявление о выпуске ).
Этот модуль теперь отвечает за управление USB Mass Storage Devices. Существует поток, где люди жалуются, что uasв ядре 3.15 происходит сбой их USB-устройств. Другой говорит, что это может быть причиной SMART проблем.
К счастью, эти проблемы, похоже, исчезли в ядре 3.19 (которое я использую), так как мое устройство определяется правильно. Остается только проблема SMART.
Чтобы это исправить, нужно отключить использование uasмодуля для данного устройства.
Отключить uasбез перезагрузки
Во-первых, отключите все USB-устройства, которые могут его использовать. Затем удалите uasи usb-storageмодули:
sudo modprobe -r uas
sudo modprobe -r usb-storage
Затем загрузите usb-storageмодуль с параметром, который говорит, что он не должен использоваться uasдля данного устройства:
sudo modprobe usb-storage quirks=VendorId:ProductId:u
VendorIdи ProductIdдолжны быть заменены вашим поставщиком устройства и идентификатором продукта, которые можно получить с помощью lsusbкоманды (они являются символами после ID).
Например, у меня есть следующее устройство:
Bus 002 Device 011: ID 0bc2:3320 Seagate RSS LLC SRD00F2 [Expansion Desktop Drive]
Таким образом, мой идентификатор поставщика 0bc2, а мой идентификатор продукта 3320. Моя команда:
sudo modprobe usb-storage quirks=0bc2:3320:u
Последнее uговорит usb-storageигнорировать uasдля устройства (см. Источник ).
На этом этапе вы можете вставить USB-устройство, и оно будет знать, что не следует использовать uas, чтобы SMART работал правильно. dmesgПри вставке 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
Сделать изменение постоянным
Предыдущий причуд будет длиться только до тех пор, пока вы не перезагрузите систему. Чтобы сделать его постоянным, вам нужно выполнить шаги, описанные здесь , которые я копирую ниже:
Сначала создайте файл с именем ignore_uas.confв /etc/modprobe.d/каталоге со следующим содержимым:
options usb-storage quirks=VendorId:ProductId:u
Как и прежде, замените VendorIdи ProductIdвашим поставщиком устройства и идентификатором продукта, полученным от lsusb.
Затем восстановите ваш начальный виртуальный диск:
mkinitcpio -p linux
или, на более новых версиях Ubuntu:
sudo update-initramfs -u
Наконец, перезагрузите компьютер.
Изменить: Больше информации об этой проблеме, и другой способ обойти ее без отключения uas (который имеет лучшую пропускную способность, чем usb-хранилище) можно найти здесь: https://www.smartmontools.org/ticket/971#comment:12
Похоже, что ядро занесено в черный список SAT ATA PASS-THROUGHна некоторых устройствах при работе в режиме uas, так как у них сломана прошивка.
Таким образом, черный список можно отключить (на свой страх и риск), используя предыдущий метод, который я упоминаю в ответе, но удаляя финал uиз причуды, то есть:
quirks=VendorId:ProductId:
Обратите внимание, однако, что я не проверял этот подход.