You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 22.04更新重启后PCI扩展以太网端口消失问题求助

Ubuntu 22.04更新重启后PCI扩展以太网端口消失问题求助

问题描述

我在Ubuntu 22.04上有两个以太网端口:一个是主板集成的,另一个是通过PCI扩展板添加的,之前分别命名为enp3s0(RTL8168d)和enp4s0(RTL8168g)。但在一次强制更新后的重启,集成的那个端口完全无法被系统检测到了。

从系统日志可以看到,之前重启时两个网卡都会被识别并重命名,但最近几次启动只显示enp4s0的相关记录,完全没有enp3s0的踪影:

Aug 13 12:14:38 lello kernel: [ 0.562099] r8169 0000:03:00.0 eth0: RTL8168d/8111d, 00:e0:ff:68:4e:8f, XID 283, IRQ 32
Aug 13 12:14:38 lello kernel: [ 0.562103] r8169 0000:03:00.0 eth0: jumbo features [frames: 9194 bytes, tx checksumming: ko]
Aug 13 12:14:38 lello kernel: [ 0.582409] r8169 0000:04:00.0 eth1: RTL8168g/8111g, c0:3f:d5:96:0c:7b, XID 4c0, IRQ 41
...
Aug 15 09:43:36 lello kernel: [ 0.667173] r8169 0000:04:00.0 eth0: RTL8168g/8111g, c0:3f:d5:96:0c:7b, XID 4c0, IRQ 32
Aug 15 09:43:36 lello kernel: [ 0.682630] r8169 0000:04:00.0 enp4s0: renamed from eth0

怀疑是更新导致的驱动或网卡命名问题,有没有人遇到过类似情况?或者能给些排查建议?


排查与解决建议

看起来你遇到的是内核更新后集成网卡丢失的典型问题,结合日志和硬件情况,你可以按以下步骤逐一排查:

  • 先排除物理硬件问题:
    断电后打开机箱,检查集成网卡对应的PCI插槽(或者主板集成的网卡接口)有没有松动,PCI扩展板也重新拔插一下,确保接触良好。有时候重启后的震动可能导致接触不良,这是最容易忽略但也最容易解决的问题。

  • 检查PCI设备识别情况:
    开机后打开终端,运行lspci | grep Ethernet命令,看看输出里有没有RTL8168d/8111d相关的设备。如果能看到,说明硬件被系统识别了,只是驱动或命名异常;如果完全看不到,那可能是硬件损坏或者主板PCI插槽故障,需要进一步排查硬件。

  • 重新加载网卡驱动:
    两个网卡都使用r8169内核驱动,试试重新加载驱动来修复可能的加载异常:

    sudo rmmod r8169
    sudo modprobe r8169
    

    执行完后运行ip link show,看看enp3s0有没有重新出现。

  • 切换到旧内核测试:
    既然问题出在更新重启后,很可能是新内核的驱动兼容问题。重启系统时,在GRUB菜单选择「Advanced options for Ubuntu」,然后选择更新前的旧内核版本启动,看看集成网卡能不能被识别。如果旧内核下正常,说明是新内核的问题,可以暂时用旧内核,等待后续内核更新修复,或者手动安装适配的驱动。

  • 手动指定网卡命名规则:
    有时候udev的网卡命名规则会出问题,你可以手动根据MAC地址指定网卡名称:

    1. 编辑(或新建)udev规则文件:sudo nano /etc/udev/rules.d/70-persistent-net.rules
    2. 添加以下内容(替换成你集成网卡的MAC地址00:e0:ff:68:4e:8f):
      SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:e0:ff:68:4e:8f", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="enp3s0"
      
    3. 保存文件后重启系统,看看网卡能不能被正确识别并命名。
  • 安装适配的DKMS驱动:
    如果新内核自带的r8169驱动有兼容问题,可以尝试安装r8168的DKMS版本(针对Realtek网卡的专用驱动):

    sudo apt update
    sudo apt install dkms build-essential linux-headers-$(uname -r)
    sudo apt install r8168-dkms
    

    安装完成后重启系统,驱动会自动适配当前内核,试试能不能找回丢失的网卡。


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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.21 15:39:38