Si mi objetivo tiene un dispositivo conectado y muchos controladores para ese dispositivo cargado, ¿cómo puedo entender qué dispositivo está usando qué controlador?
                    
                        linux
                                linux-kernel
                                
                    
                    
                        Alexios
fuente
                
                
            fuente

lspci -vlo hace sololspci -nkle mostrará los controladores adjuntos. En general, el sysfs es el lugar adecuado para buscar.vendorID:productID? Además, ¿qué pasa si no es un dispositivo PCI, y solo lo velsusbpor ejemplo?Aquí hay un pequeño guión que escribí :
Salida de muestra:
fuente
vethy otros controladores virtuales. En mi humilde opinión la única solución es utilizarethtoololshw.sudo lspci -vlo mostrará Me gusta esto:También puedes combinarlo
grepasí:fuente
Si solo quiere usar sysfs y no quiere lidiar con todos estos comandos que eventualmente se ven dentro de sysfs de todos modos, así es como:
¿Cuál es el módulo / controlador para eth6? "sfc" es
o mejor aún ... deja que readlink resuelva el camino por ti.
entonces ... para descubrir cuáles son los controladores para todas sus interfaces de red:
fuente
Puede usar el
lsmodcomando para obtener el estado de los módulos / controladores de dispositivos cargados en el kernel de Linux.Para un dispositivo específico, también puede usar
dmesg |grep <device-name>para obtener los detalles.fuente
Para dispositivos basados en USB, puede ver el nombre del controlador mediante el
lsusbcomando:Y / o usa el
lshwque enumera los dispositivos en todos los buses, incluidos USB, PCI, etc. para que pueda ver qué controlador usa:fuente