在统信UOS中确认驱动是否真正生效,需依次执行:①用lsmod | awk 'NR>1 {print $1}' | sort -u查看已加载模块;②用ip -c a与ethtool -i验证设备绑定驱动;③用lspci -k或lsusb配合dmesg检查设备识别时关联的驱动;④用find /lib/modules/$(uname -r) -name "*.ko"确认驱动文件存在。

在统信UOS系统中确认所有已加载并生效的驱动模块,是排查硬件异常、验证兼容性或准备系统迁移的关键前提——仅看“设备管理器里有图标”或“安装包已执行”不能代表驱动真正进入内核运行。
查已加载的内核驱动模块
内核驱动必须以模块形式加载进内存才起作用,这是最权威的“已装”判定依据。
打开终端,执行:
lsmod | awk 'NR>1 {print $1}' | sort -u
该命令过滤掉表头,只输出所有已加载模块名,并去重排序。输出如nvidia、rtw89pci、i915、r8169等,每一个都对应一个正在工作的驱动。
注意:若目标设备(如USB无线网卡)不在列表中,说明驱动根本没加载,后续所有配置都无效。
查设备绑定的驱动名称
有些模块虽已加载,却未正确挂载到物理设备上,需逐个验证接口与驱动的绑定关系。
第一步:用ip -c a列出所有网络接口,记下疑似网卡的名称(如wlan0、wlx00c0caabcd12、enp0s31f6)
第二步:对每个接口执行ethtool -i 接口名,例如ethtool -i enp0s31f6
第三步:检查输出中driver:字段是否为非空有效值(如driver: i915、driver: rtw89pci),且version:后有具体版本号
若出现driver: unknown或No such device错误,说明该接口未被任何驱动接管,即使lsmod里有相关模块名,也属于空转状态。
查PCI/USB设备识别时关联的驱动
此方法不依赖驱动是否加载成功,而是读取内核在设备枚举阶段记录的“本应使用哪个驱动”,用于判断驱动缺失还是错配。
方法一(PCI设备):
① 运行lspci -nn | grep -i "network\|display\|audio\|usb",找到目标设备行,例如:00:02.0 VGA compatible controller [0300]: Intel Corporation HD Graphics 620 [8086:5916]
② 复制方括号内ID(如[8086:5916]),执行lspci -k -s 00:02.0
③ 查看Kernel driver in use:字段——有值即已绑定;若为空,只显示Kernel modules: i915,则说明模块存在但未激活
方法二(USB设备):
执行lsusb -v 2>/dev/null | grep -A 5 -B 5 "idVendor\|idProduct\|bInterfaceClass",定位到目标设备段落,再检查dmesg | grep -i "usb.*attached"最近几条,看是否有driver=xxx字样
查驱动文件是否存在于系统中
模块已加载 ≠ 驱动文件真实存在,某些驱动可能被误删或仅临时插入未持久化。
运行:find /lib/modules/$(uname -r) -name "*.ko" | xargs ls -1t | head -20
该命令列出当前内核版本目录下最新生成的20个.ko驱动文件,快速确认常见驱动(如i915.ko、nvidia.ko、rtw89pci.ko)是否存在。若关键驱动文件缺失,lsmod能显示模块名也只是上次启动残留的缓存假象。
【必须用find命令配合uname -r,不可硬写路径,否则在多内核环境中会查错目录】


















