温馨提示×

centos如何安装网卡驱动

小樊
40
2025-12-19 17:02:47
栏目: 智能运维

CentOS 安装网卡驱动的实用步骤

一 准备与诊断

  • 确认网卡型号与驱动状态
    • 查看设备:lspci | grep -i ethernet
    • 查看内核日志:dmesg | grep -i eth
    • 查看是否加载模块:lsmod | grep <模块名>
    • 查看接口:ip link show
  • 准备编译环境(离线可用本地镜像)
    • 安装工具与头文件:yum install -y gcc make kernel-devel kernel-headers
    • 无网络时挂载安装介质,配置本地源(如 CentOS-Media.repo 的 baseurl 指向光盘路径),再用 yum --disablerepo=* --enablerepo=c-media install gcc make kernel-devel* 安装依赖。

二 安装方式

  • 方式A 使用发行版或厂商RPM包
    • 优先尝试仓库包:yum install <驱动包名>(或 dnf)。适合已打包并签名的驱动。
  • 方式B 从源码编译安装(通用)
    • 以 Intel e1000e 为例(其他驱动流程相同):
      1. 解压:tar xzf e1000e-<版本>.tar.gz && cd e1000e-<版本>/src
      2. 编译安装:make && make install
      3. 更新依赖索引:depmod -a
      4. 加载模块:modprobe e1000e
      5. 验证:lsmod | grep e1000eip link show
    • 以 Realtek RTL8111/8168 为例(常见社区驱动为 r8168):
      1. 解压:tar -jxvf r8168-<版本>.tar.bz2 && cd r8168-<版本>
      2. 编译安装:make clean modules && make install
      3. 更新索引并加载:depmod -a && modprobe r8168
      4. 验证:lsmod | grep r8168ip link show
    • 注:源码编译需确保已安装与当前运行内核匹配的 kernel-devel/headers

三 常见问题与处理

  • UEFI Secure Boot 导致第三方驱动无法加载
    • 现象:modprobe <模块名>Required key not available
    • 处理:进入 BIOS 关闭 Secure Boot(如关闭 EFI_SECURE_BOOT_SIG_ENFORCE),重启后再加载模块。
  • 编译失败缺少依赖
    • 现象:提示缺 gcc/kernel-devel/kernel-headers
    • 处理:挂载安装介质,启用本地源,使用 yum --disablerepo=* --enablerepo=c-media install gcc make kernel-devel* 补齐依赖后重试编译。
  • 驱动已安装但仍无网络
    • 处理:确认接口名(如 ens33/enp0s3),用 ip link set <接口名> up 启用;检查 ip addr 是否拿到地址;必要时 systemctl restart NetworkManager(或传统网络服务)。

四 快速参考命令清单

  • 识别与诊断:lspci | grep -i ethernetdmesg | grep -i ethlsmod | grep <模块名>ip link show
  • 编译安装通用:make && make installdepmod -amodprobe <模块名>
  • 网络服务:CentOS 7 可用 systemctl restart network;CentOS 8 推荐 NetworkManagersystemctl status/start NetworkManager
  • 无网环境装依赖:yum --disablerepo=* --enablerepo=c-media install gcc make kernel-devel kernel-headers*。

0