怎么取消linux中udev自动加载驱动
时间: 2024-03-03 22:50:22 浏览: 190
在 Linux 中,udev 是一种动态设备管理工具,它会自动识别和加载设备驱动程序。如果需要取消 udev 自动加载驱动,可以按照以下步骤进行操作:
1. 查看设备的 Vendor ID 和 Product ID。可以使用 lsusb 命令或者其他工具查看设备的 Vendor ID 和 Product ID。例如,假设我们要取消 udev 自动加载一个 USB 鼠标的驱动程序,可以使用 lsusb 命令查看鼠标的 Vendor ID 和 Product ID:
```
$ lsusb
Bus 001 Device 002: ID 045e:07fd Microsoft Corp. Nano Transceiver 1.1 for Bluetooth
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 002: ID 046d:c077 Logitech, Inc. M105 Optical Mouse
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
```
在上面的输出中,我们可以看到 Logitech 鼠标的 Vendor ID 是 046d,Product ID 是 c077。
2. 创建一个 udev 规则文件。可以在 /etc/udev/rules.d 目录下创建一个新的规则文件。例如,创建一个名为 99-disable-mouse.rules 的规则文件:
```
$ sudo vi /etc/udev/rules.d/99-disable-mouse.rules
```
在文件中添加以下内容:
```
ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c077", ENV{UDISKS_IGNORE}="1"
```
上述规则中,ATTRS{idVendor} 和 ATTRS{idProduct} 分别指定设备的 Vendor ID 和 Product ID,ENV{UDISKS_IGNORE}="1" 表示忽略该设备。
3. 重启 udev 服务。可以使用以下命令重启 udev 服务:
```
$ sudo systemctl restart systemd-udevd.service
```
重启服务后,udev 将不再自动加载指定设备的驱动程序。
需要注意的是,上述操作会影响整个系统中指定设备的驱动程序加载,因此需要谨慎操作。如果需要重新启用设备的驱动程序,可以删除 /etc/udev/rules.d 目录下的规则文件,并重启 udev 服务。
阅读全文