Ubuntu 22.04升级内核至5.19.0-32后RTL8821CE无线网卡失效问题求助
Ubuntu 22.04升级内核至5.19.0-32后RTL8821CE无线网卡失效问题求助
看起来问题根源很清楚啦——你通过DKMS安装的RTL8821CE无线网卡驱动,只针对旧内核5.15.0-60-generic完成了编译适配,新升级的5.19.0-32-generic内核并没有对应的驱动模块,所以系统识别不到驱动,网卡才会显示UNCLAIMED(未被认领)状态。
别慌,按下面的步骤操作就能修复:
方法一:重新为当前内核编译DKMS驱动
先确认你正处于出问题的内核版本:
uname -r输出应该是
5.19.0-32-generic。安装/重新安装编译驱动所需的依赖工具:
sudo apt update && sudo apt install --reinstall dkms build-essential linux-headers-$(uname -r)这里
linux-headers-$(uname -r)会自动匹配当前内核的头文件,是编译驱动的必要条件。让DKMS为当前内核重新安装驱动:
sudo dkms install rtl8821ce/5.5.2.1这个命令会调用DKMS,针对当前内核编译并安装你已有的rtl8821ce 5.5.2.1版本驱动。
加载驱动模块:
sudo modprobe rtl8821ce验证网卡状态是否恢复正常:
nmcli device或者用:
sudo lshw -C network如果网卡不再显示
UNCLAIMED,而是有正常的状态信息,那就搞定了!
方法二:重新安装驱动源码(如果方法一无效)
有时候DKMS的缓存可能出问题,这时候可以重新获取驱动源码再安装:
先卸载现有的DKMS驱动:
sudo dkms remove rtl8821ce/5.5.2.1 --all安装编译所需的基础工具:
sudo apt install git build-essential dkms linux-headers-$(uname -r)获取RTL8821CE的DKMS驱动源码包(比如从社区维护的开源平台获取),解压后进入源码目录:
cd rtl8821ce执行自带的DKMS安装脚本:
sudo ./dkms-install.sh同样加载驱动模块并验证状态:
sudo modprobe rtl8821ce nmcli device
额外提醒
以后再升级内核时,DKMS应该会自动为新内核编译驱动,但前提是你保持build-essential和对应内核的linux-headers包处于安装状态,这样就不会再遇到类似问题啦。
备注:内容来源于stack exchange,提问作者hell61
相关产品推荐
相关产品推荐

