温馨提示×

CentOS怎么卸载旧版驱动

小樊
56
2026-08-19 12:17:07
栏目: 智能运维

CentOS 上卸载旧版驱动,方法取决于驱动类型(内核模块、RPM 包、手动编译安装等)。下面按常见场景给你一套通用且安全的操作流程


一、先确认驱动类型(非常重要)

1️⃣ 查看已加载的内核模块

lsmod | grep 驱动名

例如 NVIDIA:

lsmod | grep nvidia

2️⃣ 查看是否通过 RPM 安装

rpm -qa | grep 驱动名

例如:

rpm -qa | grep nvidia
rpm -qa | grep kmod

二、如果是 RPM 安装的驱动(最常见)

✅ 卸载方式

sudo yum remove 驱动包名

或(CentOS 8+):

sudo dnf remove 驱动包名

例如:

sudo yum remove kmod-nvidia-*
sudo yum remove nvidia-driver*

清理残留依赖

sudo yum autoremove

三、如果是 手动编译安装的驱动

1️⃣ 进入原驱动目录(如果有)

sudo make uninstall

⚠️ 很多驱动不支持 make uninstall,那就只能手动清理。


2️⃣ 手动清理内核模块

ls /lib/modules/$(uname -r)/kernel/drivers/

删除对应模块:

sudo rm -f /lib/modules/$(uname -r)/kernel/drivers/xxx/xxx.ko

然后更新内核模块依赖:

sudo depmod -a

四、卸载 NVIDIA 驱动(CentOS 常见)

方法一:官方 .run 安装包卸载

sudo /usr/bin/nvidia-uninstall

方法二:RPM 方式

sudo yum remove nvidia*
sudo yum remove kmod-nvidia*

清理残留

sudo rm -rf /usr/lib64/nvidia
sudo rm -rf /usr/lib/nvidia

五、卸载 网卡 / RAID / 存储驱动

1️⃣ 查看驱动对应模块

ethtool -i eth0
modinfo 模块名

2️⃣ 卸载模块

sudo rmmod 模块名

3️⃣ 禁止开机加载

sudo vim /etc/modprobe.d/blacklist.conf

添加:

blacklist 模块名

六、卸载后必须做的事 ✅

1️⃣ 重建 initramfs

sudo dracut --force

2️⃣ 重启

reboot

3️⃣ 验证

lsmod | grep 驱动名
lspci -k

七、常见错误 & 解决

❌ 卸载后系统无法启动

✅ 进入 救援模式

dracut --force

❌ 驱动卸载不干净

✅ 检查:

rpm -qa | grep 驱动名
ls /lib/modules/

八、我可以更精确帮你

你可以直接告诉我:

  1. CentOS 版本(6 / 7 / 8 / Stream)
  2. 驱动类型(NVIDIA / 网卡 / RAID / 其他)
  3. 安装方式(yum / rpm / run / 编译)

我可以给你精确到命令级别的卸载方案 ✅

0