在 CentOS(以及一般 RHEL 系 Linux)中,“驱动冲突”通常表现为:
dmesg / journalctl 中出现 module verification failed、unknown symbol、conflicting driver 等nouveau vs nvidia、iwlwifi 与旧驱动)下面按常见场景 + 解决思路说明。
uname -a
lsmod
dmesg | grep -i error
journalctl -xe
lspci -k
重点看:
lsmod)nouveau + nvidia)Kernel driver in use 是什么# 临时禁用(重启生效前)
sudo modprobe -r nouveau
永久禁用:
echo -e "blacklist nouveau\noptions nouveau modeset=0" | \
sudo tee /etc/modprobe.d/blacklist-nouveau.conf
sudo dracut --force
sudo reboot
比如 r8169 和 r8168:
lsmod | grep r816
禁用系统自带驱动:
echo "blacklist r8169" | sudo tee /etc/modprobe.d/blacklist-r8169.conf
sudo dracut --force
lspci -k
若看到:
Kernel driver in use: wrong_driver
可强制绑定:
sudo modprobe correct_driver
echo "correct_driver" | sudo tee /etc/modules-load.d/correct.conf
rpm -qa | grep kernel
sudo yum remove kernel-3.x.x-xxx
建议:
如:
解决方式:
sudo yum install kernel-devel kernel-headers
sudo dkms status
sudo dkms rebuild -m nvidia -v xxx
或重新安装驱动:
sudo ./NVIDIA-Linux.run --uninstall
sudo ./NVIDIA-Linux.run
现象:
module verification failed解决:
sudo mokutil --disable-validation
# 或直接在 BIOS 中关闭 Secure Boot
启动时按 e
在 linux 行末尾加:
rd.break
或
systemd.unit=rescue.target
modprobe.blacklist=nouveau
lspci -nnk | grep -A3 VGA
lsmod
dmesg | tail -50
modinfo <driver>
你可以告诉我:
我可以给你一步一步精确命令。