插件窝 干货文章 linux驱动文件在哪个文件夹

linux驱动文件在哪个文件夹

驱动 内核 模块 路径 316    来源:    2025-05-02

在Linux系统中,驱动程序相关的文件通常分布在以下几个关键目录中:


1. 已加载的驱动模块(动态加载)

  • 路径: /lib/modules/$(uname -r)/kernel/
    • 例如:/lib/modules/5.15.0-76-generic/kernel/drivers/
    • 说明:
    • 这里存放当前内核版本(通过uname -r查看)的可加载内核模块(.ko文件)。
    • 子目录按功能分类,如net/usb/gpu/等。

2. 设备树(Device Tree)

  • 路径: /proc/device-tree//sys/firmware/devicetree/base/
    • 说明:
    • 嵌入式系统(如ARM)使用设备树描述硬件,驱动可能依赖这些.dtb文件。

3. 内核源码中的驱动代码

  • 路径: /usr/src/linux-$(uname -r)/drivers/
    • 说明:
    • 如果安装了内核源码,驱动源代码会在此目录下。
    • 需要安装linux-headers包(如apt install linux-headers-$(uname -r))。

4. 运行时驱动信息

  • 路径: /sys/class//sys/bus/
    • 说明:
    • /sys/class/: 按设备类型(如net/block/)显示已注册设备。
    • /sys/bus/: 按总线类型(如pci/usb/)显示驱动和设备绑定状态。

5. 用户空间驱动(如UIO或FUSE)

  • 路径: /usr/lib/driver//usr/local/lib/driver/
    • 说明:
    • 部分用户态驱动可能存放在此类目录。

常用命令工具

  • 查看已加载模块:
    bash lsmod # 列出已加载模块 modinfo <模块名> # 查看模块详细信息
  • 搜索驱动文件:
    bash find /lib/modules/$(uname -r) -name "*.ko" | grep <关键词>

注意事项

  • 权限问题: 访问某些目录(如/sys/)可能需要root权限。
  • 驱动类型: 内置驱动(编译进内核)没有单独的.ko文件,需通过内核配置查看。

如果需要进一步定位特定驱动,请提供硬件名称或驱动功能描述。