文章目录
- 一、问题分析
- 二、解决方法汇总
一、问题分析
我是遇到两次这个问题,一次是在Ubuntu20.04上,一次是在Debian12上,第一次遇到时候那叫一个紧张,感觉系统里面重要的东西不保,吓死我了;
Ubuntu20.04: 上是因为我在root权限里面,并在root文件下,卸载自带的python3,并执行了autoreove这个命令,执行完后直接重启,开机黑屏,有个小横杠光标一直闪;应该是删除很多不应该删除的东西;
Debian12: 上是因为我拿到新的工控机,系统是Debian12的最新版的,安装显卡驱动时候,需要禁用nouveau,出现问题,重启后黑屏;
结合网上说法,原因大致几点:显示管理器(如 GDM、LightDM)启动失败、显卡驱动问题(与gpu不匹配,与cpu图形冲突)、内核参数错误(升级内核/内核版本低) 或 文件系统损坏(误删除某某些文件) 导致的
二、解决方法汇总
遇到这种问题不要慌,询问同事或者网上找找答案,一般都能解决;
在系统启动后,ctrl+alt+f1或f2或f3,进入tty模式,输入用户名和密码,会到终端,如果终端可以使用,可以放心下来,问题不大,可以修复;在tty模式下修复
方法一:简单修复下,重启图形界面显示服务
sudo apt-get dist-upgrade
apt-get update --fix-missing
sudo apt --fix-broken install #修复依赖关系
sudo apt install -f
systemctl restart gdm
#若无用,卸载重装gdm
sudo apt purge gdm gdm3
sudo apt install gdm3 ubuntu-desktop
systemctl restart gdm
sudo reboot
#或者换下图形界面
apt-get install lightdm
sudo service lightdm start
sudo reboot
方法二:安装新显卡驱动
#若无输出,则表明禁用成功
lsmod | grep nouveau
sudo apt-get remove nvidia-* #卸载驱动
sudo apt purge nvidia* libnvidia*
sudo apt purge '^nvidia-.*' '^libnvidia-.*'
ubuntu-drivers devices
sudo ubuntu-drivers autoinstall
#apt purge *nvidia* && apt install nvidia-driver firmware-misc-nonfree
update-initramfs -u
sudo root
方法三:内核与驱动冲突,或者驱动是否加载,特别对于Debian12
uname -r # 查看当前内核版本
sudo apt install linux-headers-$(uname -r) # 确保头文件已安装
sudo apt install linux-image-amd64 linux-headers-amd64 # 确保内核一致
sudo update-initramfs -u
sudo reboot
#查看驱动版本
ls /usr/src | grep nvidia #一般会返回 nvidia-[版本号]
do dkms install -m nvidia -v [版本号]
# 使用nvitop验证是否安装成功,若出现nvitop界面则安装成功
lsmod | grep nvidia #如果没有任何输出,说明驱动模块未加载
sudo modprobe nvidia #手动加载
modprobe: FATAL: Module nvidia not found → 驱动未正确安装
modprobe: ERROR: could not insert ‘nvidia’ → 内核或驱动冲突
NVRM: version mismatch → 驱动与内核版本不兼容(重装驱动或切换内核)
检查内核日志,检查内核日志
dmesg | grep -i nvidia
常见错误:NVRM: The NVIDIA GPU is not supported → 驱动版本不匹配你的 GPU
NVRM: failed to load firmware → 缺少固件(需安装 firmware-misc-nonfree)
如果驱动已安装但模块未加载,尝试重新生成
sudo apt install --reinstall linux-headers-$(uname -r)
sudo dpkg-reconfigure nvidia-driver
sudo update-initramfs -u
sudo reboot
终极:查看日志,定位问题
#查看启动错误
journalctl -xb -p 3 # 查看本次启动的错误日志(优先级 3=ERROR)
journalctl -b -0 # 查看当前启动日志
#显示管理器日志
cat /var/log/gdm3/log # GNOME 显示管理器(GDM3)
cat /var/log/lightdm/lightdm.log # LightDM
cat /var/log/Xorg.0.log # X11 显示服务器日志
#系统日志
dmesg | grep -i error # 查看内核错误
cat /var/log/syslog # 通用系统日志
显卡驱动问题,相关报错
Xorg.0.log 报错 Failed to load NVIDIA module 或 modesetting 错误。
journalctl 显示 DRM 或 GPU 相关错误。
# 查看当前显卡驱动
lspci -k | grep -A 3 "VGA"
glxinfo | grep "OpenGL renderer"
# 如果是 NVIDIA 显卡
apt purge *nvidia* # 清除旧驱动
apt install nvidia-driver firmware-misc-nonfree
update-initramfs -u # 更新 initramfs
reboot
显示管理器(GDM/LightDM)崩溃 报错
journalctl 显示 gdm3.service failed 或 lightdm.service failed。
/var/log/gdm3/log 报错 Could not start GNOME Display Manager。
# 重新配置显示管理器
dpkg-reconfigure gdm3 # 或 lightdm
# 如果 GDM3 损坏,重装
apt install --reinstall gdm3 gnome-shell
systemctl restart gdm3
我的问题是debian12禁用nouveau,然后重启后就黑屏,按理说不应该黑屏才对,没找到这个原因,恢复nouveau,显示界面就可以显示了;但安装驱动必须禁用nouveau,此时无解;
然后我是先不禁用nouveau,然后手动下载英伟达驱动NVIDIA-Linux-*.run,再禁用nouveau,重启后,进入ffy模式,cd到驱动安装目录,再手动安装驱动,–解决;
echo "blacklist nouveau" | sudo tee /etc/modprobe.d/blacklist-nvidia-nouveau.conf
echo "options nouveau modeset=0" | sudo tee -a /etc/modprobe.d/blacklist-nouveau.conf
sudo update-initramfs -u
chmod +x NVIDIA-Linux-*.run
sudo ./NVIDIA-Linux-*.run --no-opengl-files # 避免覆盖OpenGL库
发布者:admin,转转请注明出处:http://www.yc00.com/web/1754819151a5204379.html
评论列表(0条)