温馨提示×

ubuntu网卡驱动怎么配置

小樊
33
2025-12-27 22:33:49
栏目: 智能运维

Ubuntu 网卡驱动配置全流程

一 识别网卡与当前驱动

  • 查看网卡型号与驱动绑定:
    • 查看设备:lspci | grep -i network
    • 查看驱动绑定:lspci -knn | grep -A3 -i “Network”
    • 查看已加载模块:lsmod | grep -iE “iwlwifi|r8169|wl|r8125”
    • 查看接口状态:ip link
  • 若设备存在但无驱动(Kernel driver in use: N/A),需安装或切换驱动;若驱动加载失败,优先检查内核头文件与编译环境是否就绪。

二 优先使用仓库与DKMS安装

  • 更新索引并安装常见固件/驱动支持:
    • sudo apt update
    • sudo apt install build-essential linux-headers-$(uname -r) firmware-iwlwifi firmware-linux-nonfree
  • 常见厂商方案(按网卡型号选择其一):
    • Intel 无线:sudo apt install firmware-iwlwifi,然后 sudo modprobe iwlwifi
    • Broadcom 无线:sudo apt install bcmwl-kernel-source
    • Realtek 有线(示例):sudo apt install r8168-dkms r8125-dkms
  • 安装完成后重启:sudo reboot。DKMS 可在内核升级后自动重建驱动模块,适合长期使用。

三 源码编译与DKMS安装

  • 适用于仓库无驱动或需特定版本的场景(以 Realtek RTL8125 为例):
    1. 安装依赖:sudo apt update && sudo apt install build-essential linux-headers-$(uname -r) dkms
    2. 下载驱动并解压至 /usr/src/r8125-<版本>/
    3. 使用 DKMS 注册并构建安装:
      • sudo dkms add -m r8125 -v <版本>
      • sudo dkms build -m r8125 -v <版本>
      • sudo dkms install -m r8125 -v <版本>
      • sudo depmod -a && sudo modprobe r8125
    4. 验证:lsmod | grep r8125ip link 应能看到网卡与驱动已就绪。
  • 若之前加载了错误驱动(如 r8169RTL8125),先卸载再加载正确驱动:
    • sudo rmmod r8169(若占用先停用接口:sudo ip link set down
    • 必要时屏蔽错误驱动(谨慎):在 /etc/modprobe.d/blacklist.conf 添加 blacklist r8169,然后 sudo update-initramfs -u
  • 某些驱动也提供 dkms.confautorun.sh,按驱动目录 README 执行即可。

四 网络配置与生效

  • Ubuntu 18.04+ 默认使用 Netplan(/etc/netplan/*.yaml):
    • 编辑配置(示例为静态 IPv4):
      • sudo nano /etc/netplan/50-cloud-init.yaml
      • 示例片段:
        • network:
          • version: 2
          • renderer: networkd
          • ethernets:
            • eno1:
              • dhcp4: no
              • addresses: [192.168.1.100/24]
              • gateway4: 192.168.1.1
              • nameservers:
                • addresses: [8.8.8.8, 8.8.4.4]
    • 应用:sudo netplan apply(远程环境可用 sudo netplan try 降低断连风险)
  • 使用 NetworkManager(桌面版或 renderer 设为 NetworkManager 时):
    • 命令行:nmcli con add type ethernet ifname eno1 con-name eth0 ipv4.method manual ipv4.addresses 192.168.1.100/24 ipv4.gateway 192.168.1.1 ipv4.dns “8.8.8.8 8.8.4.4”
    • 启用连接:nmcli con up eth0
  • 验证:ping 8.8.8.8ping google.com,确认链路与 DNS 正常。

五 常见问题与排查

  • 驱动冲突与切换:确认当前驱动 lsmod | grep <驱动名>,必要时 sudo rmmod <旧驱动>sudo modprobe <新驱动>;对顽固冲突可在 /etc/modprobe.d/blacklist.conf 中屏蔽旧驱动并更新 initramfs。
  • 未识别设备或固件缺失:安装 firmware-iwlwififirmware-linux-nonfree 等通用固件包;Intel 无线执行 sudo modprobe iwlwifi 后再检查 dmesg | tail
  • 编译失败:确保安装 linux-headers-$(uname -r)build-essential;DKMS 构建失败可先 dkms remove -m <模块名> -v <版本> --all 后重装。
  • 虚拟机/云主机:优先使用云厂商提供的 HWE 内核与官方镜像驱动,避免与虚拟驱动冲突。
  • 变更后无网络:优先回滚到上一个可用 Netplan 配置(备份后再 apply),或改用 renderer: NetworkManager 以便图形界面排障。

0