ubuntu网卡失效

ubuntu网卡失效

  • [Tenda WiFi6 网卡(AIC8800DC)驱动失效修复记录](#Tenda WiFi6 网卡(AIC8800DC)驱动失效修复记录)
    • 一、故障现象
    • 二、排查过程
      • [1. 确认 USB 设备被识别(排除硬件问题)](#1. 确认 USB 设备被识别(排除硬件问题))
      • [2. 确认没有驱动绑定到设备](#2. 确认没有驱动绑定到设备)
      • [3. 确认驱动模块缺失](#3. 确认驱动模块缺失)
      • [4. 用启动记录对时间线,确认根因](#4. 用启动记录对时间线,确认根因)
    • 三、根因
    • 四、修复步骤
      • [1. 编译驱动](#1. 编译驱动)
      • [2. 安装模块 + 固件 + udev 规则(需 root)](#2. 安装模块 + 固件 + udev 规则(需 root))
      • [3. 验证](#3. 验证)
    • 五、以后再遇到怎么办
      • [方式 A:临时修复(本次采用)](#方式 A:临时修复(本次采用))
      • [方式 B:一劳永逸(推荐,尚未实施)](#方式 B:一劳永逸(推荐,尚未实施))
    • 六、涉及文件位置备忘

Tenda WiFi6 网卡(AIC8800DC)驱动失效修复记录

日期:2026-09-19

设备:Tenda AIC8800DC(USB ID 2604:0014)

系统:Ubuntu 22.04,内核 6.8.0-138-generic


一、故障现象

  • 网卡在 Windows 上正常,Ubuntu 上此前也能正常使用
  • 2026-09-18 晚上重启后,WiFi 突然消失
  • 网卡 USB 已插入,但网络设置里看不到无线网卡

二、排查过程

1. 确认 USB 设备被识别(排除硬件问题)

bash 复制代码
lsusb
# Bus 001 Device 005: ID 2604:0014 Tenda AIC8800DC   ← 设备正常被识别

2. 确认没有驱动绑定到设备

bash 复制代码
lsusb -t
# Port 9: Dev 5, If 0, Class=Vendor Specific Class, Driver=, 480M
#                                                    ↑ Driver 为空 = 没有任何驱动接管

注意:此时系统里显示"已连接"的 enx... "有线连接"其实是手机 USB 共享网络

(rndis_host),与网卡无关,容易误判。

3. 确认驱动模块缺失

bash 复制代码
lsmod | grep -i aic        # 无输出,模块未加载
modinfo aic8800_fdrv       # ERROR: Module not found
find /lib/modules -name 'aic8800*'
# /lib/modules/6.2.0-26-generic/kernel/drivers/net/wireless/aic8800/aic8800_fdrv.ko
# ↑ 模块只存在于【旧内核】6.2.0-26 目录下,当前内核 6.8.0-138 没有

4. 用启动记录对时间线,确认根因

bash 复制代码
last reboot | head
# reboot   system boot  6.8.0-138-generi Sun Sep 20 00:06   still running
# reboot   system boot  6.8.0-138-generi Sat Sep 19 16:11 - 16:52
# reboot   system boot  6.2.0-26-generic Fri Sep 18 12:35 - 22:30
#                       ↑ 9月18日白天还在旧内核(驱动正常)
#                         18日晚重启进入新内核后驱动失效

三、根因

系统内核自动升级(6.2.0-26 → 6.8.0-138)后,该驱动没有跟着为新内核编译。

  • 此驱动是外置源码编译模块(make 装到 /lib/modules/<内核版本>/...),
    没有注册 DKMS (/usr/src/AIC8800 里没有 dkms.conf)
  • 所以内核更新后模块不会自动重编译,新内核下驱动"消失"

四、修复步骤

1. 编译驱动

bash 复制代码
cd ~/wifi6-adapter-linux-driver-V1.0.1.10/Appendix/linux_driver_sourcecode/aic8800_linux_drvier/drivers/aic8800
make

遇到的坑 :编译报 gcc-12: not found。Ubuntu 内核头文件固定要求 gcc-12

(内核编译选项 -ftrivial-auto-var-init=zero 只有 gcc-12+ 支持,系统里的

gcc-11 无法绕过)。

bash 复制代码
sudo apt install -y gcc-12   # 装好后重新 make,一次通过

编译产物:

  • aic8800_fdrv/aic8800_fdrv.ko(无线网卡驱动)
  • aic_load_fw/aic_load_fw.ko(固件加载)

2. 安装模块 + 固件 + udev 规则(需 root)

bash 复制代码
sudo bash -c 'set -e; cd ~/wifi6-adapter-linux-driver-V1.0.1.10/Appendix/linux_driver_sourcecode/aic8800_linux_drvier/drivers/aic8800; make install; cd ../..; bash install_setup.sh; modprobe aic_load_fw; modprobe aic8800_fdrv'

坑:install_setup.sh 没有可执行权限,直接 ./install_setup.sh 会报

"权限不够",要用 bash install_setup.sh 方式运行。

该命令依次完成:

  1. make install ------ 两个 .ko 装入当前内核的模块目录并 depmod
  2. install_setup.sh ------ 复制固件(fw/aic8800D80、fw/aic8800DC)到
    /lib/firmware/,安装 udev 规则 aic.rules
  3. modprobe 加载两个模块

3. 验证

bash 复制代码
lsmod | grep aic      # aic8800_fdrv / aic_load_fw 已加载
nmcli device status   # 出现 wlxc83a351aaeb8 (wifi),自动连回 XJTU_STU1
ping -c 3 -I wlxc83a351aaeb8 223.5.5.5   # 3/3 通,延迟约 24ms

五、以后再遇到怎么办

同样的故障一定会在下次内核更新后复现(WiFi 消失)。两种处理方式:

方式 A:临时修复(本次采用)

重复上面"第四节"的步骤即可(gcc-12 装过就不用再装,直接 make 会用缓存,

很快)。也可以进源码目录后只跑:

bash 复制代码
cd Appendix/linux_driver_sourcecode/aic8800_linux_drvier/drivers/aic8800
make && sudo make install && sudo modprobe aic8800_fdrv

方式 B:一劳永逸(推荐,尚未实施)

把驱动注册为 DKMS 模块 ,以后内核更新时自动重编译,彻底免维护。

需要:在 /usr/src/AIC8800-<版本>/ 下补一个 dkms.conf,然后

dkms add / dkms build / dkms install 注册。

六、涉及文件位置备忘

内容 路径
驱动源码 ~/wifi6-adapter-linux-driver-V1.0.1.10/Appendix/linux_driver_sourcecode/aic8800_linux_drvier/
已安装到 /usr/src 的源码副本 /usr/src/AIC8800/
模块安装位置 /lib/modules/<内核版本>/kernel/drivers/net/wireless/aic8800/
固件 /lib/firmware/aic8800D80/、/lib/firmware/aic8800DC/
udev 规则 /etc/udev/rules.d/aic.rules
官方安装指南 PDF Linux System Quick Installation Guide.pdf、Appendix/Linux System Source Code Installation Guide.pdf
相关推荐
Apipi*2 小时前
30天速通Linux 第六章信号及信号处理
linux·运维·信号处理
天启HTTP3 小时前
爬虫防封核心原理:IP轮换机制与风控规避逻辑
linux·服务器·网络·爬虫·tcp/ip
广州浮点FLOATLIC5 小时前
许可证服务器迁移后软件打不开:研发 IT 怎样定位连接问题
linux·服务器·数据库
BLUcoding5 小时前
接口服务公网超时排查记录:SecureRandom 阻塞问题分析与解决
java·linux·springboot·aes·securerandom
AIgorithmGEEK6 小时前
[Linux]从手写报头到内核套路:序列化、反序列化与自定义协议全链路
linux·运维·服务器·网络·序列化·反序列化
Nil2086 小时前
leetcode 139单词拆分
linux·运维·服务器
Starry-sky(jing)6 小时前
BUG: unable to handle kernel paging request 完整排查:dmesg 四要素与三路定罪
linux·运维·服务器·内核·排障
mounter6256 小时前
从硬件互连到操作系统变革:CXL 技术演进与 Linux 内核工程挑战
linux·运维·服务器
xh didida7 小时前
Linux -- 基础IO
linux·服务器·开发语言·c++
zly35008 小时前
centos7 mount设备挂载 /dev/sda1/硬盘挂载
linux·运维·服务器