Se meu destino tem um dispositivo conectado e muitos drivers para esse dispositivo carregado, como posso entender qual dispositivo está usando qual driver?
linux
linux-kernel
Alexios
fonte
fonte
lspci -v
faz isso por si só.lspci -nk
irá mostrar os drivers conectados. Em geral, o sysfs é o lugar certo para procurar.vendorID:productID
? Além disso, e se não for um dispositivo PCI e você o vir apenaslsusb
por exemplo?Aqui está um pequeno script que escrevi :
Saída de amostra:
fonte
veth
e outros drivers virtuais. IMHO a única solução é usarethtool
oulshw
.sudo lspci -v
vai mostrar isso. como isso:Você também pode combiná-lo da
grep
seguinte maneira:fonte
Se você deseja usar claramente o sysfs e não deseja lidar com todos esses comandos que eventualmente aparecem dentro do sysfs, veja como:
diga, qual é o módulo / driver para eth6? "sfc" é
ou melhor ainda .. deixe o readlink resolver o caminho para você.
então ... para descobrir quais são os drivers para todas as suas interfaces de rede:
fonte
Você pode usar o
lsmod
comando para obter o status dos drivers de dispositivos / módulos carregados no Kernel do Linux.Para um dispositivo específico, você pode usar
dmesg |grep <device-name>
para obter os detalhes também.fonte
Para dispositivos baseados em USB, você pode ver o nome do driver usando o
lsusb
comando:E / ou você usa o
lshw
que enumera os dispositivos em todos os barramentos, incluindo USB, PCI, etc, para poder ver qual driver ele usa:fonte