centos drivers手动安装方法
导读:CentOS 手动安装驱动的通用流程与示例 一、通用准备与注意事项 确认硬件型号与系统版本 查看显卡:lspci | grep -i nvidia 查看网卡:lspci | grep -i ethernet 查看内核与头文件:uname...
CentOS 手动安装驱动的通用流程与示例
一、通用准备与注意事项
- 确认硬件型号与系统版本
- 查看显卡:lspci | grep -i nvidia
- 查看网卡:lspci | grep -i ethernet
- 查看内核与头文件:uname -r,确保已安装匹配版本的 kernel-devel 与 kernel-headers
- 安装编译环境
- CentOS 7/8:sudo yum groupinstall “Development Tools”
- CentOS 8/Stream:sudo dnf groupinstall “Development Tools”
- 安装头文件与开发包:sudo yum/dnf install gcc gcc-c++ kernel-devel-$(uname -r) kernel-headers-$(uname -r)
- 准备驱动包
- NVIDIA 通常为 .run 安装器;Intel/Realtek 多为 .tar.gz 源码包
- 运行级别与图形环境
- 建议在安装显卡驱动时切换到文本模式:sudo systemctl set-default multi-user.target(安装完成后再切回图形:sudo systemctl set-default graphical.target)
- 安全启动 Secure Boot
- 若启用,第三方内核模块(如 NVIDIA、部分 Realtek 驱动)可能加载失败,需在 BIOS 中暂时关闭后再安装,或按厂商指引签名模块
二、NVIDIA 显卡驱动手动安装
- 禁用 nouveau(两种等效方式,二选一)
- 方式 A(推荐):编辑 /etc/default/grub,在 GRUB_CMDLINE_LINUX 末尾添加:
- rd.driver.blacklist=nouveau nouveau.modeset=0
- 生成配置:sudo grub2-mkconfig -o /boot/grub2/grub.cfg
- 方式 B:创建黑名单
- echo “blacklist nouveau” | sudo tee /etc/modprobe.d/blacklist-nouveau.conf
- 方式 A(推荐):编辑 /etc/default/grub,在 GRUB_CMDLINE_LINUX 末尾添加:
- 重建 initramfs 并重启
- sudo mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
- sudo dracut -v /boot/initramfs-$(uname -r).img $(uname -r)
- sudo reboot
- 进入文本模式并安装
- 确认 nouveau 未加载:lsmod | grep nouveau(无输出即成功)
- 赋予执行权限并安装:chmod +x NVIDIA-Linux-x86_64-xxx.run & & sudo ./NVIDIA-Linux-x86_64-xxx.run
- 验证与常用设置
- 验证:nvidia-smi
- 持久化常驻:sudo nvidia-smi -pm 1
- 可选替代方案(RHEL/CentOS 7 常用)
- 添加 ELRepo 源后通过 kmod 安装(更便于内核升级后自动适配):
- 导入 GPG:sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
- 安装源包(以 CentOS 7 为例):sudo rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
- 安装驱动:sudo yum install kmod-nvidia nvidia-x11-drv(旧卡可按需选择 304xx/340xx 分支)
- 添加 ELRepo 源后通过 kmod 安装(更便于内核升级后自动适配):
三、网卡驱动手动安装示例
- 示例一 Realtek RTL8111/8168(r8168)
- 确认型号:lspci | grep -i ethernet
- 安装依赖:sudo yum/dnf install gcc kernel-devel
- 编译安装:
- 解压并进入目录:tar -zxf r8168-.tar.gz & & cd r8168-
- 编译安装:sudo make clean modules & & sudo make install
- 更新依赖并加载:sudo depmod -a & & sudo modprobe r8168
- 验证:lsmod | grep r8168;必要时在 /etc/modprobe.d/blacklist.conf 中 blacklist r8169 以避免冲突
- 示例二 Intel i219-V(e1000e)
- 从 Intel 获取 Linux 驱动包(如 e1000e-.tar.gz)
- 安装编译依赖:sudo yum/dnf install gcc kernel-devel
- 编译安装:
- 解压并进入:tar -zxf e1000e-.tar.gz & & cd e1000e-/src
- 编译安装:make & & sudo make install
- 加载模块:sudo depmod -a & & sudo modprobe e1000e
- 验证:lsmod | grep e1000e;网络服务:sudo systemctl restart NetworkManager(或 legacy:sudo service network restart)
四、常见问题与排查
- 编译失败
- 原因多为 kernel-devel/kernel-headers 与运行内核版本不一致
- 处理:sudo yum/dnf remove kernel-devel-$(uname -r) & & sudo yum/dnf install kernel-devel-$(uname -r) kernel-headers-$(uname -r),再重新编译
- 驱动冲突
- 如 r8169 与 r8168、或 b43/ssb/bcma 与 wl 等,需先 rmmod 冲突模块并在 /etc/modprobe.d/*.conf 中 blacklist
- 新内核后驱动失效
- 第三方源码驱动需在新内核上重新 make & & make install;使用 ELRepo kmod 方案可随内核升级自动适配
- Secure Boot 拦截
- 安装第三方内核模块前在 BIOS 关闭 Secure Boot,或按驱动/厂商文档进行模块签名
- 验证要点
- NVIDIA:nvidia-smi 输出 GPU 与驱动版本
- 网卡:ip a、ethtool 、dmesg | grep
五、快速命令清单(可直接复制执行)
- 环境准备
- sudo dnf/yum groupinstall “Development Tools”
- sudo dnf/yum install gcc gcc-c++ kernel-devel-$(uname -r) kernel-headers-$(uname -r)
- NVIDIA 禁用 nouveau 与重建 initramfs
- echo “blacklist nouveau” | sudo tee /etc/modprobe.d/blacklist-nouveau.conf
- sudo dracut -v /boot/initramfs-$(uname -r).img $(uname -r) & & sudo reboot
- NVIDIA 安装与验证
- 文本模式:sudo systemctl set-default multi-user.target
- 安装:chmod +x NVIDIA-Linux-x86_64-xxx.run & & sudo ./NVIDIA-Linux-x86_64-xxx.run
- 验证:nvidia-smi
- Realtek RTL8111/8168
- make clean modules & & sudo make install & & sudo depmod -a & & sudo modprobe r8168
- Intel i219-V
- 在 e1000e 源码目录:make & & sudo make install & & sudo depmod -a & & sudo modprobe e1000e
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: centos drivers手动安装方法
本文地址: https://pptw.com/jishu/747850.html
