Linux:列出没有驱动程序的设备?

Linux:列出没有驱动程序的设备?

如何列出 Linux 中未安装或加载驱动程序的设备?

答案1

我认为Linux通常会找到一个驱动程序或另一个来使用固件。

使用lspci -vlsusb列出与其关联的设备和驱动程序。如果任何驱动程序无法启动固件,您可以检查dmesg输出是否有错误。

您可以像这样组合它们来查找没有驱动程序的设备:lspci -v | grep -B8 -v "Kernel modules: [a-z0-9]+"。它基本上搜索没有任何关联驱动程序的设备。如果您在 USB 总线上连接设备(请原谅 RAS 综合症), lsusb 将不会有任何帮助,并且dmesg是您唯一的希望。

答案2

在我的 debian 上,启动时您将看到启动消息“设备名称...无法加载错误”或类似消息。

或者打开终端并使用命令

dmesg | grep "failed to load"
  • 我多年前就知道这个问题,但是当我用谷歌搜索时,这个问题是第一个,我认为可能有用。

答案3

如果您打算检查通过 USB 端口连接的设备,只需使用lsusb 列出它们即可。

答案4

如果您想浏览系统中的所有设备并开始学习架构,请忽略所有特定于总线的命令,只需快进到:

udevadm info -e

然后深入 /sys 目录查看拓扑树和依赖关系。当然,您不会在这里(或其他任何地方)找到位于任何未启用或不可枚举或可查询的总线后面的设备,主板传感器是最常见的示例(直到加载适当的模块)。

相关内容