Use udevadm info
conforme descrito na outra resposta ao link que você mencionou. Veja um exemplo com uma variante do grep diferente para reduzir a saída, enquanto percorre a árvore /sys
para trás:
$ udevadm info -a -n /dev/sda | egrep 'looking|DRIVER'
looking at device '/devices/pci0000:00/0000:00:1f.2/ata1/host0/target0:0:0/0:0:0:0/block/sda':
DRIVER==""
looking at parent device '/devices/pci0000:00/0000:00:1f.2/ata1/host0/target0:0:0/0:0:0:0':
DRIVERS=="sd"
looking at parent device '/devices/pci0000:00/0000:00:1f.2/ata1/host0/target0:0:0':
DRIVERS==""
looking at parent device '/devices/pci0000:00/0000:00:1f.2/ata1/host0':
DRIVERS==""
looking at parent device '/devices/pci0000:00/0000:00:1f.2/ata1':
DRIVERS==""
looking at parent device '/devices/pci0000:00/0000:00:1f.2':
DRIVERS=="ahci"
looking at parent device '/devices/pci0000:00':
DRIVERS==""
Você pode ver que no meu sistema, /dev/sda
mapeia para o dispositivo SCSI 0:0:0:0
, que está anexado a ata1
no dispositivo PCI 0:00:1f.2
(que é o adaptador host)
O driver sd
é responsável por manipular o dispositivo de bloco, enquanto o driver ahci
é responsável por manipular o adaptador de host SATA.