使用 Nvidia 驱动程序登录 Ubuntu 22.04.01 时出现黑屏

使用 Nvidia 驱动程序登录 Ubuntu 22.04.01 时出现黑屏

因此,我全新安装了 Ubuntu 22.04 和 Windows 10(在单独的驱动器上)。我有 Nvidia GTX1050 GPU 和 Dell U2414H 显示器(通过 HDMI)。除了一个小问题外,一切都运行正常。在启动时,当它进入登录屏幕时,我的显示器反而变黑了。我在启动时看到的唯一消息是

    [...] mtd device must be supplied (device name is empty)
    [...] mtd device must be supplied (device name is empty)

奇怪的是,我可以通过执行以下操作之一轻松修复黑屏:

  • 重新连接HDMI线;
  • 打开或关闭显示器;
  • 通过 ctrl+alt+F3 转到 tty3,然后通过 ctrl+alt+F1 返回登录屏幕;
  • 黑屏时,按回车键,盲输入密码,然后再次按回车键。

所有这些都使屏幕正常工作。我在注销时也遇到了这个问题(黑屏而不是登录)。我可以看到显示器背光亮着,但不知何故显示器按钮(打开带有亮度和输入源等设置的菜单)不起作用。

查看 dmesg 我发现一些 nvidia 错误:

[   51.343044] [drm:nv_drm_master_set [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to grab modeset ownership
[   51.343149] [drm:nv_drm_master_set [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to grab modeset ownership
[   51.343214] [drm:nv_drm_master_set [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to grab modeset ownership
[   51.343278] [drm:nv_drm_master_set [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to grab modeset ownership
[   51.388125] [drm:nv_drm_master_set [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to grab modeset ownership
[   51.388243] [drm:nv_drm_master_set [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to grab modeset ownership
[   51.388310] [drm:nv_drm_master_set [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to grab modeset ownership
[   51.388376] [drm:nv_drm_master_set [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to grab modeset ownership
[   51.419391] [drm:nv_drm_master_set [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000100] Failed to grab modeset ownership

只有在使用 Nvidia 驱动程序时才会发生此问题(我尝试过清除并重新安装多个版本 - 470、510 和 515)。使用 Nouveau 时,它运行正常。无论使用 Wayland 还是 XOrg,都会发生这种情况。这并不严重,但每次启动/注销时都要经历这些动作,这让我很烦恼。

以下是一些信息:

:~$ inxi -Gx --display
Graphics:
  Device-1: NVIDIA GP107 [GeForce GTX 1050] vendor: Gigabyte driver: nvidia
    v: 515.65.01 bus-ID: 01:00.0
  Display: x11 server: X.Org v: 1.21.1.3 driver: X: loaded: nvidia
    unloaded: fbdev,modesetting,nouveau,vesa gpu: nvidia
    resolution: 1920x1080~60Hz
  OpenGL: renderer: NVIDIA GeForce GTX 1050/PCIe/SSE2
    v: 4.6.0 NVIDIA 515.65.01 direct render: Yes

:~$ sudo lshw -c video
  *-display                 
       description: VGA compatible controller
       product: GP107 [GeForce GTX 1050]
       vendor: NVIDIA Corporation
       physical id: 0
       bus info: pci@0000:01:00.0
       version: a1
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress vga_controller bus_master cap_list rom
       configuration: driver=nvidia latency=0
       resources: irq:37 memory:fd000000-fdffffff memory:c0000000-cfffffff memory:d0000000-d1ffffff ioport:e000(size=128) memory:c0000-dffff
  *-graphics
       product: EFI VGA
       physical id: 1
       logical name: /dev/fb0
       capabilities: fb
       configuration: depth=32 resolution=1024,768

:~$ nvidia-smi
Mon Sep 19 18:44:10 2022       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 515.65.01    Driver Version: 515.65.01    CUDA Version: 11.7     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  NVIDIA GeForce ...  Off  | 00000000:01:00.0  On |                  N/A |
| 38%   36C    P0    N/A /  75W |    402MiB /  2048MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|    0   N/A  N/A      1086      G   /usr/lib/xorg/Xorg                123MiB |
|    0   N/A  N/A      1292      G   /usr/bin/gnome-shell              110MiB |
|    0   N/A  N/A      2942      G   ...0/usr/lib/firefox/firefox      164MiB |
+-----------------------------------------------------------------------------+

也许有人遇到过类似的情况?有什么解决办法吗?

答案1

我遇到了类似的问题,只不过它对我来说运行良好,直到有一天我遇到了黑屏。对我唯一有用的方法是将我的 NVIDIA 驱动程序降级到 510。

但是,由于我使用的是 CUDA,这破坏了nvidia-smi工具和pynvmlPython 包,所以这不是一个完美的解决方案。我稍后可能会尝试将其更新回来。

如果您想尝试根据自己的情况进行操作,请一步一步进行(我正在回忆,所以这里可能有错误):

  1. 在 GRUB 中,选择 Ubuntu(高级选项)
  2. 选择具有恢复模式的选项。
  3. 启用网络
  4. 启动 root shell
  5. 找到您的 nvidia 驱动程序版本:sudo apt list --installed | grep nvidia-driver。注意它使用的数字。在我的情况下是 515。
  6. 卸载 nvidia 驱动程序:sudo apt-get remove nvidia-driver-515 nvidia-dkms-515
  7. 安装不同的版本:

A)sudo add-apt-repository ppa:graphics-drivers/ppa

b)sudo apt-get install nvidia-drivers-510 nvidia-dkms-510

  1. 我不得不再次设置安全启动密码。
  2. 重启。

如果您遇到困难,希望这能有所帮助。

答案2

这对我有用:

  • Ctrl++Alt进入F5tty

  • 登录

  • 键入以下命令

    cd /etc/gdm3
    sudo nano custom.config 
    
  • 取消注释此行

    Enable wayland=false
    
  • 保存文件

  • 然后重启

    sudo systemctl reboot 
    

此答案位于以下链接:登录循环-Ubuntu

答案3

我也遇到了同样的问题。登录后我看到一个空白屏幕。

我能够正确登录恢复模式,因此问题肯定出在正常模式中使用的 Nvidia 驱动程序上,因为恢复模式使用 Nouveau 驱动程序。

因此,重新启动后,进入 root shell 提示符(通过 GRUB 菜单或 CTRL+ALT+Fn)(Fn 可以是 F1 到 F6)并运行:

sudo ubuntu-drivers autoinstall

上述命令将自动安装适合您的机器的驱动程序并更新它们。然后,使用以下命令进行验证:

nvidia-smi

然后运行:

sudo reboot

现在,您将能够使用更新的驱动程序正确重新登录到您的桌面。

相关内容