-
场景A:NVIDIA 显卡驱动导致图形界面循环登录
- 查看日志:less /var/log/Xorg.0.log 与 journalctl -xe,定位驱动加载失败或模块冲突。
- 安装依赖:yum install -y gcc kernel-devel kernel-headers dkms。
- 禁用 nouveau:编辑 /etc/default/grub,在 GRUB_CMDLINE_LINUX 添加 rd.driver.blacklist=nouveau nouveau.modeset=0;执行
- BIOS:grub2-mkconfig -o /boot/grub2/grub.cfg
- UEFI:grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg
并在 /lib/modprobe.d/dist-blacklist.conf 中加入 blacklist nouveau,重建 initramfs:
mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
dracut -v /boot/initramfs-$(uname -r).img $(uname -r)
- 切换到文本模式:systemctl isolate multi-user.target(或 init 3),运行 NVIDIA 安装包:
chmod +x NVIDIA-Linux-x86_64-.run
./NVIDIA-Linux-x86_64-.run
- 若仍异常,尝试安装参数 –no-opengl-files,或检查 Secure Boot 状态。
- 验证:nvidia-smi 查看驱动与 GPU 状态。
-
场景B:网卡驱动问题(以 Realtek RTL8111/8168 为例)
- 确认型号:lspci | grep -i ethernet。
- 安装依赖:yum install -y gcc kernel-devel。
- 编译安装(示例为 r8168):
make clean modules
sudo make install
sudo depmod -a
sudo insmod ./src/r8168.ko
- 验证:ip link、ethtool <接口名> 检查链路与速率。
-
场景C:接口名变化导致 “eth0 does not seem to be present”
- 核对设备与驱动:lspci | grep -i ethernet 与 lsmod | grep <驱动名>。
- 检查 udev 规则:ls -l /etc/udev/rules.d/70-persistent-net.rules,必要时修正或清理旧规则。
- 适配新名称:将现有网络配置从 eth0 迁移到 ens33/enp0s3 等实际名称,或按需调整 udev 规则以恢复期望命名。