CentOS安装NVIDIA .run驱动黑屏恢复
装完CentOS,手痒点了官方.run包,重启直接黑屏,连登录管理器都不给面子?别急着重装系统,九成情况都能救回来,且数据不动,十分钟内原地复活。

先别拔电,三步判断是真黑还是假死
1. 按Ctrl+Alt+F2能否切到tty2?能切,说明X服务崩了,内核还在。
2. capslock灯能不能亮灭?能,内核没挂。
3. 盲输root回车密码回车,再输入reboot回车,机器能重启,说明只是驱动把显示管道堵死。
以上任意一步有反应,就能继续往下救。
临时抢救:用nomodeset先开机

开机看见GRUB菜单时,按e键,找到linux16那行,末尾空格加上nomodeset,Ctrl+x启动。系统会屏蔽掉NVIDIA驱动,用基础fbdev先点亮屏幕,至少能进桌面拷资料。
彻底卸载.run残留,回到开源nouveau
登录tty,执行:
ls /etc/modprobe.d/ | grep nvidia
凡是nvidia-xxx.conf全删:
rm -f /etc/modprobe.d/nvidia*.conf

再清理.run留下的内核模块:
/usr/bin/nvidia-uninstall
如果提示找不到,直接:
find /usr -name nvidia*.ko -delete
重建initramfs,把nouveau放出来:
dracut --force
重启,80%的机器此时已恢复图形登录。
仍黑屏?手动屏蔽nouveau冲突
某些主板+UEFI组合,nouveau被.run包强行拉黑,需要手工放白名单。
新建:
vi /etc/modprobe.d/nouveau.conf
写入:
options nouveau modeset=1
保存后再次dracut,重启。
想继续用闭源驱动?换官方repo版,别碰.run
.run包每次内核升级都炸,repo版自动跟随内核重编。先装elrepo-release:
dnf install elrepo-release
再装驱动:
dnf install nvidia-driver nvidia-settings kernel-devel-$(uname -r)
重启,登录界面秒出,不再黑屏。
懒人一键回滚脚本
把下面内容存成/root/rollback.sh,赋可执行,下次再手滑直接跑:
#!/bin/bash
rm -f /etc/modprobe.d/nvidia*.conf
/usr/bin/nvidia-uninstall 2>/dev/null
dracut --force
grub2-mkconfig -o /boot/grub2/grub.cfg
echo '重启后按住shift选旧内核可进系统'
常见作死点提醒
• Secure Boot没关,.run包装完模块签名不过,必黑。
• 装了多个版本kernel-devel,驱动编进非当前内核,重启匹配不上。
• Wayland会话下装.run,登录循环,切到X11再装。
避开这三坑,黑屏几率直接砍到接近零。
CentOS装NVIDIA .run驱动黑屏,本质是驱动与内核显示管道掐架。用nomodeset抢回控制台,删.run残留,让nouveau先顶上,再换repo版闭源驱动,数据无损,十分钟完事。记住:.run包能不用就别用,官方仓库才是长久之计。
