使用 Nvidia 驅動程式登入 Ubuntu 22.04.01 時出現黑屏

使用 Nvidia 驅動程式登入 Ubuntu 22.04.01 時出現黑屏

因此,我全新安裝了 Ubuntu 22.04 和 Windows 10(在單獨的磁碟機上)。我有 Nvidia GTX1050 GPU 和透過 HDMI 的 Dell U2414H 顯示器。除了一個小怪癖之外,一切都正常運作。啟動時,當進入登入畫面時,我的顯示器變黑。我在啟動時只看到的訊息是

    [...] 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. 啟動根外殼
  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+F5輸入 tty

  • 登入

  • 輸入以下命令

    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

現在,您將能夠使用更新的驅動程式正確重新登入桌面。

相關內容