Код USB Class 08 Subclass 06 Prot 50 в диспетчере устройств или в выводе lsusb указывает на устройство класса Mass Storage (накопители), работающее по SCSI-командам через протокол Bulk-Only Transport — именно так определяются флешки, внешние диски и кардридеры. Если рядом с этой строкой устройство не определяется, не монтируется или висит с восклицательным знаком, проблема почти всегда кроется в драйвере, питании порта или самом накопителе, а не в самом коде.
Эта статья расшифровывает каждую часть идентификатора, объясняет, как операционная система работает с такими устройствами, и даёт безопасный порядок диагностики: от проверки в lsusb -v до анализа дескрипторов. Материал подойдёт и пользователям, столкнувшимся с ошибкой, и разработчикам, исследующим USB-стек.
Расшифровка идентификатора: что означают Class 08, Subclass 06 и Protocol 50
Идентификатор состоит из трёх шестнадцатеричных полей дескриптора USB-устройства. Каждое поле стандартизировано USB Implementers Forum (USB-IF) и однозначно описывает тип устройства.
- 🔹 Class 08 — класс Mass Storage: накопители данных (флешки, HDD/SSD в боксах, кардридеры, оптические приводы).
- 🔹 Subclass 06 — подкласс SCSI Transparent Command Set: команды доступа к данным передаются в формате SCSI.
- 🔹 Protocol 50 (hex 0x50) — протокол Bulk-Only Transport (BBB): обмен данными только через bulk-эндпоинты, без interrupt-канала.
Проще говоря, строка «08/06/50» — это паспорт обычной флешки или внешнего диска. Подавляющее большинство USB-накопителей в мире используют именно комбинацию 08/06/50, поэтому сам по себе код не является ошибкой — это нормальное объявление устройства о своих возможностях.
Где встречается этот код и как его посмотреть
В Linux идентификатор виден в выводе команды lsusb и подробно раскрывается с флагом -v. В Windows аналогичную информацию показывают диспетчер устройств (вкладка «Сведения» → «ИД оборудования») и сторонние утилиты вроде USBDeview.
lsusb -v -d 0781:5567 | grep -E "bDeviceClass|bInterfaceClass|bInterfaceSubClass|bInterfaceProtocol"Обратите внимание на разницу: bDeviceClass на уровне устройства часто равен 00, а реальные значения 08/06/50 прописаны на уровне интерфейса (bInterfaceClass, bInterfaceSubClass, bInterfaceProtocol). Это нормально и не является признаком неисправности.
💡Чтобы быстро найти проблемное устройство в lsusb, выполните команду до и после подключения накопителя и сравните вывод — новая строка и есть искомое устройство.