You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Ubuntu 20.04升级至22.04后网卡未识别(UNCLAIMED),手动安装模块依赖报错且无法联网求助

Ubuntu 20.04升级至22.04后网卡未识别(UNCLAIMED),手动安装模块依赖报错且无法联网求助

看起来你在升级到Ubuntu 22.04后遇到了Realtek网卡无法被系统识别的棘手问题,而且因为没法联网,连离线安装内核模块都卡壳了——毕竟Valheim服务器的种子和数据不能丢,重装肯定是下下策。先理清楚你的问题细节:

你的网卡硬件信息如下:

*-network UNCLAIMED
description: Ethernet controller
product: RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
vendor: Realtek Semiconductor Co., Ltd.
physical id: 0
bus info: pci@0000:1e:00.0
version: 15
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress msix bus_master cap_list
configuration: latency=0
resources: ioport:f000(size=256) memory:fd504000-fd504fff memory:fd500000-fd503fff

你尝试手动安装linux-modules-5.15.0-52-generic_5.15.0-52.58_amd64.deb时,遇到了依赖错误:

Selecting previously unselected package linux-modules-5.15.0-52-generic.
(Reading database ... 190584 files and directories currently installed.)
Preparing to unpack linux-modules-5.15.0-52-generic_5.15.0-52.58_amd64.deb ...
Unpacking linux-modules-5.15.0-52-generic (5.15.0-52.58) ...
dpkg: dependency problems prevent configuration of linux-modules-5.15.0-52-generic:
 linux-modules-5.15.0-52-generic depends on linux-image-5.15.0-52-generic | linux-image-unsigned-5.15.0-52-generic; however:
  Package linux-image-5.15.0-52-generic is not installed.
  Package linux-image-unsigned-5.15.0-52-generic is not installed.

dpkg: error processing package linux-modules-5.15.0-52-generic (--install):
 dependency problems - leaving unconfigured
Errors were encountered while processing:
 linux-modules-5.15.0-52-generic

完全离线解决方案(靠另一台联网机器+U盘搞定)

既然没法联网,我们就用最原始的离线方式解决:

  1. 确认目标机器需要的内核镜像类型
    在你的Ubuntu服务器上先跑这个命令,确认当前内核版本和类型:

    uname -r
    

    如果输出是5.15.0-52-generic,Ubuntu默认用带签名的内核镜像包(linux-image-5.15.0-52-generic);如果是自定义编译的内核,才需要无签名版本。

  2. 离线下载所有依赖包
    找一台能联网的Ubuntu 22.04机器,下载以下amd64架构的包:

    • 对应版本的linux-image-5.15.0-52-generic_5.15.0-52.58_amd64.deb(带签名内核用这个),或linux-image-unsigned-5.15.0-52-generic_5.15.0-52.58_amd64.deb(无签名内核用这个)
    • 额外下载linux-modules-extra-5.15.0-52-generic_5.15.0-52.58_amd64.deb,这个包包含了Realtek网卡的驱动模块,大概率能解决UNCLAIMED问题
  3. 传输包到目标机器
    把下载好的deb包复制到U盘,插到你的Ubuntu服务器上,再把包复制到服务器的某个目录(比如~/deb-packages)。

  4. 按顺序安装包
    内核镜像包必须先装,再装模块包:

    cd ~/deb-packages
    # 先装内核镜像
    sudo dpkg -i linux-image-5.15.0-52-generic_5.15.0-52.58_amd64.deb
    # 如果是无签名版本就换成:sudo dpkg -i linux-image-unsigned-5.15.0-52-generic_5.15.0-52.58_amd64.deb
    
    # 再装模块包和额外模块包
    sudo dpkg -i linux-modules-5.15.0-52-generic_5.15.0-52.58_amd64.deb
    sudo dpkg -i linux-modules-extra-5.15.0-52-generic_5.15.0-52.58_amd64.deb
    
  5. 重启验证
    安装完成后重启机器:

    sudo reboot
    

    重启后用这个命令检查网卡驱动是否加载:

    lspci -k | grep -A 2 Ethernet
    

    如果看到Kernel driver in use: r8168或者r8169,说明驱动正常加载,网卡应该能被系统识别了。

额外补救方案

如果上面的步骤还是没解决,可能需要手动安装Realtek的专用驱动r8168,同样离线下载对应的dkms包(比如r8168-dkms_8.050.03-1_all.deb,找适配Ubuntu 22.04的版本),然后用dpkg -i安装,重启后应该就能解决问题。

备注:内容来源于stack exchange,提问作者fragelius

火山引擎 最新活动