Перейти

Поддержка SATA-контроллеров в Linux

Какой драйвер libata обслуживает ваш контроллер и что он умеет. Таблица охватывает 19 семейств: от старых PCI-плат до современных чипсетов. Фильтр выше отбирает контроллеры по производителю, драйверу и поддержке NCQ.

Найти контроллер

Обновлено 8 ноября 2026

Как узнать свой контроллер и драйвер

lspci -nnk | grep -iA3 -E "sata|ahci|raid|ide"

Строка Kernel driver in use показывает, какой драйвер занял контроллер. Возможности контроллера AHCI видны в журнале загрузки:

dmesg | grep -i ahci
ahci 0000:00:17.0: AHCI 0001.0301 32 slots 6 ports 6 Gbps 0x3f impl SATA mode
ahci 0000:00:17.0: flags: 64bit ncq sntf pm led clo only pio slum part ems deso sadm sds apst

Флаг ncq означает поддержку NCQ, pm поддержку port multiplier, part и slum состояния энергосбережения линка, sds и sadm поддержку DevSleep.

Таблица поддержки

КонтроллерДрайверNCQПримечание
Intel ICH6-ICH10, PCH (AHCI)ahciдаСамый распространённый вариант. Горячая замена работает, если порт отмечен в BIOS как Hot Plug.
Intel ICH5-ICH10 (режим IDE)ata_piixнетРежим совместимости: NCQ и горячая замена недоступны. Переключите контроллер в AHCI.
Intel RST (режим RAID)ahciдаМассивы Intel RST собираются через mdadm с метаданными IMSM. Часть установщиков Linux не видит диск в этом режиме, проще включить AHCI.
AMD SB600-SB950, FCH (AHCI)ahciдаДля ранних ревизий SB600 и SB700 в драйвере есть обходы аппаратных ошибок, настраивать ничего не нужно.
NVIDIA nForce 4 (CK804, MCP04)sata_nvс оговоркамиNCQ работает только в режиме ADMA (параметр sata_nv.adma).
NVIDIA MCP51, MCP55, MCP61sata_nvс оговоркамиNCQ доступен через программный режим SWNCQ (параметр sata_nv.swncq).
NVIDIA MCP65-MCP89ahciдаЧипсеты этого поколения работают как обычный AHCI-контроллер.
JMicron JMB36xahciдаSATA-порты обслуживает ahci, порт IDE (если он есть) обслуживает pata_jmicron.
ASMedia ASM1061, ASM1062, ASM1166ahciдаЧастый контроллер на платах расширения PCIe. ASM1166 даёт шесть портов на одной плате.
Marvell 88SE91xx, 88SE92xxahciдаПри включённом IOMMU у части моделей были ошибки DMA, в ядре для них есть исправления.
Marvell 88SX50xxsata_mvнетПервое поколение серверных контроллеров Marvell, NCQ в sata_mv для них нет.
Marvell 88SX60xx, 88SX7042sata_mvдаВторое поколение серверных контроллеров Marvell, NCQ поддерживается.
Silicon Image SiI 3112, 3114, 3512sata_silнетПростые контроллеры без NCQ. С частью старых дисков Seagate драйвер ограничивает размер запроса.
Silicon Image SiI 3124, 3132, 3531sata_sil24даПоддерживают NCQ и port multiplier, поэтому часто стоят в корзинах eSATA.
VIA VT6420, VT6421, VT8237sata_viaнетСтарые контроллеры без NCQ. У VT6421 есть дополнительный порт IDE.
Promise SATA150 и SATA300 TXsata_promiseнетАппаратного RAID у этих плат нет, массивы собираются программно через mdadm.
SiS 180, 964, 965sata_sisнетСтарые чипсеты SiS.
ULi M5281, M5287, M5289sata_uliнетСтарые чипсеты ULi (бывшая ALi).
AHCI в SoC: i.MX, Armada, Allwinnerahciс оговоркамиПлатформенные варианты драйвера: ahci_imx, ahci_mvebu, ahci_sunxi и другие. Возможности зависят от чипа.

Почему почти везде ahci

AHCI это стандартный интерфейс SATA-контроллера. Если чип ему следует, ему подходит общий драйвер ahci, и производитель не важен. Отдельные драйверы sata_* нужны контроллерам, выпущенным до массового перехода на AHCI, и серверным чипам со своей архитектурой.

Если диск не виден

  1. Проверьте режим контроллера в BIOS. В режиме RAID часть установщиков диск не показывает: переключите на AHCI.
  2. Посмотрите журнал: dmesg | grep -iE "ata[0-9]". Строка SATA link down значит, что диск не отвечает: проверьте кабели и питание.
  3. Строка SATA link up без последующего описания устройства значит, что линк есть, но диск не прошёл инициализацию. Попробуйте другой порт.
  4. Для плат расширения проверьте, что модуль драйвера загружен: lsmod | grep -E "ahci|sata".

Что умеет libata поверх драйвера (TRIM, горячая замена, энергосбережение), собрано на странице возможностей libata.