我有一个适用于 ELM 327 的驱动程序,它使用依赖于 usbserial 的 pl2303 模块,而 usbserial 又依赖于 pl2303 模块。
我尝试过的:
sudo modprobe -r usbserial pl2303
sudo modprobe -r pl2303 usbserial
sudo modprobe -rf usbserial
sudo modprobe -rf pl2303
sudo rmmod --force pl2303
sudo rmmod --force usbserial
rmmod 的结果:
rmmod: ERROR: ../libkmod/libkmod-module.c:799 kmod_module_remove_module() could not remove 'usbserial': Resource temporarily unavailable
rmmod: ERROR: could not remove module usbserial: Resource temporarily unavailable
modprobe 的结果:
modprobe: FATAL: Module usbserial is in use.
我也尝试过加载和卸载驱动程序。
操作系统:Ubuntu 20.04
答案1
可以将内核模块列入黑名单。
查看此帖子如何将内核模块列入黑名单?
答案2
当您查看 dmesg 时,您是否看到一行显示插入设备时检测到该设备的信息?Ubuntu 应该具有开箱即用的 FTDI 支持。通常,您只需输入 screen /dev/ttyUSB# 38400 即可访问它。
答案3
正如 OP 提到的,与卸载模块相比,一开始就不加载模块更容易。这可以通过将模块列入黑名单来实现:
总结链接中的答案:
只需打开/etc/modprobe.d/blacklist.conf
文件并使用以下语法添加驱动程序名称:
blacklist pl2303
保存文件并重新启动。有问题的模块将不再在启动时加载。