关于双系统(ubuntu+win)安装显卡驱动黑屏记录
电脑配置:机械革命蛟龙17ks amd核显 + 4060laptop独显
系统: win11 + ubuntu22.04
提示:先看一下你是不是和我类似的核显+独显的配置,如果不是可以先参考其他文章,以免浪费时间
目录
- 关于双系统(ubuntu+win)安装显卡驱动黑屏记录
- 一、如果直接启动黑屏,但是你可以使用ctrl + alt + f 1 or f 2 ... f8进入终端
- step1:
- step2:
- step2.1:
- step2.2:
- step2.3:
- step2.4:
- step3:
- 二、如果一无法实现
- 参考链接
最近由于学习isaaclab,安装双系统(wsl不支持显卡直接驱动,官方也没有针对wsl作优化),去nvidia的官网下载.run的驱动包安装
安装过程中要我同意它禁用nouveau,如下,否则编译会报错,经之后重新启动也能正常进入桌面,继续完成编译。- One or more modprobe configuration files to disable Nouveau have been written. You will need to reboot your
- system and possibly rebuild the initramfs before these changes can take effect. Note if you later wish to
- reenable Nouveau, you will need to delete these files:
- /usr/lib/modprobe.d/nvidia-installer-disable-nouveau.conf,
- /etc/modprobe.d/nvidia-installer-disable-nouveau.conf
复制代码 安装之后使用nvidia-smi也能显示显卡信息,我之后正常启动isacclab也没有问题,以为万事大吉了。结果搞完第二天打开电脑天塌了,直接卡在黑屏处无法正常进入桌面。
于是开启了漫长的一整个晚上+一整个上午的debug (ps: 你知道我这两天是怎么过的吗?!哈基驱动
下面我分几个步骤来讲解如何解决这个问题
一、如果直接启动黑屏,但是你可以使用ctrl + alt + f 1 or f 2 ... f8进入终端
这就说明你的系统其实已经启动了
step1:
检查你的显示管理系统是否启动- sudo systemctl status gdm3
- sudo systemctl status lightdm
复制代码 如果显示dead就说明没有启动,这个稍后在说,也有一种是runing仍然没有桌面的
step2:
检查nvidia驱动是否加载正常显示显卡信息就说明加载成功,加载成功就可以进入step3,不行就先进入step2.1
step2.1:
卸载驱动
分两种
- 使用.run进行安装的
- sudo ./显卡驱动包名称 --uninstall
- # 比如 sudo ./NVIDIA-Linux-x86_64-430.26.run --uninstall
复制代码 - 使用apt进行安装的
- sudo spt autoremove nvidia-driver-XXX
- #xxx 由 tap自行补全
复制代码 检查目录:
/usr/lib/modprobe.d/nvidia-installer-disable-nouveau.conf,
/etc/modprobe.d/nvidia-installer-disable-nouveau.conf
这两个文件是否存在,如果有就删除它
step2.2:
好,此时你可以再重启一下电脑,先进入引导页面
选择ubuntu advance(或者类似)
然后选择security安全模式进入
之后通过方向键选择root
输入密码
(这会是一个命令行界面)
然后- sudo vim /etc/default/grub
复制代码 (ps:按i开始编辑,按esc,并且按住shift + : 再输入wq保存并退出)
找到这一行- GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
复制代码 quiet splash表示不显示启动的那种刷屏的调试信息
在后面加一个空格 输入nomodeset
变成这样- GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset"
复制代码 然后- sudo update-grub # 更新一下系统启动选项
复制代码 之后重启step2.3:
应该就能进入桌面可视化了,如果不能,
你可以尝试一下- sudo systemctl status gdm3
复制代码 如果是dead
你可以手动启动它
启动之前你需要先- sudo dpkg-reconfigure gdm3
- #通过方向键选择gdm3为默认的显示管理器
复制代码 然后- sudo systemctl enable gdm3
- sudo systemctl stop lightdm#如果你在之前装了这lightdm玩意的话,我觉得这个很奇怪,启动它就进不去桌面,之前用户认证也通过了,因为用gdm3成功了就没有详细研究这个了
- sudo systemctl disable lightdm
复制代码 然后reboot
step2.4:
如果还是进不去。。。。。。
也没关系,我们继续
1.如果你仍然是黑屏
ctrl + alt + f3
打开一个终端
2.如果你进入了桌面
ctrl + alt + t- sudo apt update
- ubuntu-drivers devices
- # 选择不带-open结尾的版本
- # 如
- == /sys/devices/pci0000:00/0000:00:01.1/0000:01:00.0 ==
- modalias : pci:v000010DEd000028A0sv00001D05sd0000128Abc03sc00i00
- vendor : NVIDIA Corporation
- driver : nvidia-driver-570 - distro non-free
- driver : nvidia-driver-580-open - distro non-free recommended
- driver : nvidia-driver-580 - distro non-free
- driver : nvidia-driver-570-server - distro non-free
- driver : nvidia-driver-535 - distro non-free
- driver : nvidia-driver-580-server-open - distro non-free
- driver : nvidia-driver-535-server - distro non-free
- driver : nvidia-driver-545-open - distro non-free
- driver : nvidia-driver-580-server - distro non-free
- driver : nvidia-driver-535-open - distro non-free
- driver : nvidia-driver-545 - distro non-free
- driver : nvidia-driver-535-server-open - distro non-free
- driver : nvidia-driver-570-open - distro non-free
- driver : nvidia-driver-570-server-open - distro non-free
- driver : xserver-xorg-video-nouveau - distro free builtin
- # 选择nvidia-driver-580
- # 输入
- sudo apt install nvidia-driver-580
- # 安装完成之后应该输入
- nvidia-smi # 可以看到显卡信息
复制代码 step3:
检查你系统的显卡是否只有一张如果你出现了两行信息
类似- 01:00.0 VGA compatible controller: NVIDIA Corporation AD107M [GeForce RTX 4060 Max-Q / Mobile] (rev a1)
- 07:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Phoenix1 (rev c2)
复制代码 07:00.0 就是busid 7:0:0
再打开一个终端- sudo -i #进入超级管理员
- vim /etc/X11/xorg.conf
复制代码 把下面的配置放进去(你要修改的是VendorName和BusID,改成你的核显的信息,这一步的详细信息可以由lspci | grep VGA拿到)。
VendorName不需要写全,可以索引到唯一值就行。- Section "Module"
- Load "modesetting"
- EndSection
-
- Section "Device"
- Identifier "Device1"
- Driver "modesetting"
- VendorName "Intel Corporation"
- BusID "PCI:0:2:0"
- EndSection
复制代码 其余细节参看:
https://blog.csdn.net/m0_63252914/article/details/134400519?sharetype=blog&shareId=134400519&sharerefer=APP&sharesource=mobkbk&sharefrom=link
(ps:这篇文章的作者用的是nano,我用的是vim,都是文本编辑器,自己觉得哪个好用就用哪个吧)
好,之后注意要把原来step2.2改过的那句话改回去:- GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
复制代码 记得wq退出- sudo update-grub # 更新一下系统启动选项
复制代码 也可以再检查一下step2.3
之后重启应该就没问题啦!
二、如果一无法实现
进入 step2.2 ——》step2.1——》step2.3再继续往后走
参考链接
https://blog.csdn.net/m0_63252914/article/details/134400519?sharetype=blog&shareId=134400519&sharerefer=APP&sharesource=mobkbk&sharefrom=link
https://blog.csdn.net/gaoenyang760525/article/details/131219814
https://blog.csdn.net/xiaxl/article/details/146975458
https://zhuanlan.zhihu.com/p/671285335
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |