温馨提示×

ubuntu网络驱动安装技巧

小樊
35
2025-12-31 20:36:47
栏目: 智能运维

Ubuntu 网络驱动安装技巧

一 快速判断与准备

  • 识别网卡型号与驱动状态:
    • 查看设备:lspci | grep -i net
    • 查看已绑定驱动:lspci -k | grep -A3 -i net
    • 观察接口:ip a(常见有线为 eth0/enpXs0,无线为 wlan0/wlpXs0
  • 检查是否被软/硬阻塞:
    • rfkill list(若为 Soft blocked: yes,执行 rfkill unblock
  • 准备编译环境(后续手动编译或 DKMS 会用到):
    • sudo apt update && sudo apt install -y build-essential linux-headers-generic dkms
  • 无网应急思路:
    • 使用 USB 转 RJ45 临时联网;或把 Ubuntu ISO 挂载为本地软件源 安装依赖;或用手机 USB 共享网络 给电脑上网。

二 优先使用官方与附加驱动

  • 图形界面一键方案:
    • 打开 设置 → 软件和更新 → 附加驱动,系统会自动搜索可用的专有/开源驱动(如 Broadcom bcmwl),选中后 应用更改 并重启。
  • 命令行安装 Broadcom 闭源驱动(常见机型):
    • 安装包示例:bcmwl-kernel-source(可从镜像站下载 .deb 后本地安装)
    • 安装命令:sudo dpkg -i bcmwl-kernel-source.deb*
  • 使用本地 ISO 作为软件源(完全离线也能装依赖):
    • 挂载 ISO:sudo mount -o loop -t iso9660 /path/ubuntu.iso /media/cdrom
    • 添加本地源:sudo apt-cdrom -m -d /media/cdrom add
    • 配置仅本地源:echo “deb cdrom:[Ubuntu …] /” | sudo tee /etc/apt/sources.list
    • 更新索引并安装依赖:sudo apt update && sudo apt install -y dkms
    • 再安装所需驱动 .deb 包。

三 手动编译与 DKMS 安装

  • 通用步骤(适用于缺少仓库驱动或新内核):
    • 安装构建工具:sudo apt install -y build-essential linux-headers-$(uname -r)
    • 获取驱动源码(厂商官网或 GitHub),进入目录后编译安装:
      • 常见流程:make && sudo make install
      • 加载模块:sudo modprobe <模块名>(如 rtl8812aur8125
  • 使用 DKMS 管理(推荐,内核升级后自动重建):
    • 将驱动源码放入 /usr/src/<模块名>-<版本>/,编写 dkms.conf
    • 注册与安装:
      • sudo dkms add -m <模块名> -v <版本>
      • sudo dkms build -m <模块名> -v <版本>
      • sudo dkms install -m <模块名> -v <版本>
      • sudo depmod -a && sudo modprobe <模块名>
  • 冲突驱动处理(以 Broadcom 为例):
    • 检查并移除冲突模块:lsmod | grep -E “b43|brcmsmac|bcma|ssb|wl”
    • 临时卸载:sudo rmmod <冲突模块>
    • 永久拉黑:在 /etc/modprobe.d/blacklist.conf 中加入
      • blacklist b43
      • blacklist brcmsmac
      • blacklist bcma
      • blacklist ssb
      • (如使用 wl,也可 blacklist wl
    • 更新 initramfs:sudo update-initramfs -u && sudo reboot
  • 常见芯片示例(按实际型号调整):
    • Realtek RTL8125:使用 r8125 官方驱动,DKMS 安装更稳。
    • Realtek RTL8812AU/8821AU:使用对应驱动仓库,编译后 modprobe rtl8812au
    • Intel I218-V:使用 e1000e 驱动,源码 make installmodprobe e1000e

四 常见坑与排查

  • 驱动不匹配导致掉线或不识别:
    • 现象:如 RTL8125r8169 错误驱动
    • 处理:卸载错误驱动并改用正确驱动(如 r8125),DKMS 方式更便于后续升级维护。
  • 黑名单不全导致模块“死而复生”:
    • 处理:确保冲突模块已拉黑并更新 initramfs,必要时重启。
  • 编译失败或版本不兼容:
    • 处理:确认已安装匹配当前内核的 linux-headers,清理后重编(make clean),或改用 DKMS。
  • 无线被软/硬阻塞:
    • 处理:rfkill list 检查,解除软阻塞;确认硬件无线开关/快捷键已开启。
  • 完全无网时的应急:
    • 方案优先级:USB 转 RJ45 > 手机 USB 共享网络 > ISO 本地源

0