· Jose Antonio López  · 4 min lectura

Solucionar pantalla verda a Ubuntu 22.04 amb monitor secundari

Guia per a solucionar la pantalla verda amb segon monitor i els bloquejos a Ubuntu 22.04 amb gràfics híbrids NVIDIA.

Guia per a solucionar la pantalla verda amb segon monitor i els bloquejos a Ubuntu 22.04 amb gràfics híbrids NVIDIA.

Objectiu

L’objectiu d’aquest article és resoldre un problema complex a Ubuntu 22.04 on el segon monitor no es detecta (HDMI-1 disconnected). La pantalla es posa verda al connectar el cable i moltes vegades el sistema es congela per complet.

Aquest error sol ser una combinació d’un driver corrupte i una mala configuració de PRIME en portàtils amb gràfics híbrids (Intel + NVIDIA).

CaracterísticaDescripció
Sistema OperatiuUbuntu 22.04 LTS
GPU DetectadaNVIDIA GeForce GTX 960M
Driver Utilitzatnvidia-driver-535
SímptomesPantalla verda, HDMI desconnectat, congelaments del sistema

Diagnòstic del Problema

Identificar Driver Corrupte

Si el driver no està carregat o està mal instal·lat, en executar nvidia-smi obtindràs un error de comunicació. Això succeeix sovint després d’una actualització de kernel fallida o conflictes amb nouveau.

terminal
nvidia-smi

Output d’error típic:

NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. 
Make sure that the latest NVIDIA driver is installed and running.

Configuració de PRIME (Causa Arrel)

En molts portàtils, la pantalla interna està connectada a la Intel, però el port HDMI està cablejat directament a la GPU NVIDIA.

Si el driver funciona però l’HDMI no dóna senyal (o dóna pantalla verda), veuràs alguna cosa així:

terminal
nvidia-smi

Fixa’t en la columna Disp.A Off (Display Active Off) i l’absència de processos de Xorg:

+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 535.288.01             Driver Version: 535.288.01   CUDA Version: 12.2     |
|-----------------------------------------+----------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |         Memory-Usage | GPU-Util  Compute M. |
|=========================================+======================+======================|
|   0  NVIDIA GeForce GTX 960M        Off | 00000000:01:00.0  Off |                  N/A |
| N/A   45C    P8              N/A / 200W |      5MiB /  4096MiB |      0%      Default |
+---------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------+
| Processes:                                                                            |
|  GPU   GI   CI        PID   Type   Process name                            GPU Memory |
|        ID   ID                                                             Usage      |
|=======================================================================================|
|  No running processes found                                                           |
+---------------------------------------------------------------------------------------+

Aquest Disp.A Off indica que la NVIDIA no està controlant la sortida de pantalla, la qual cosa causa l’error de senyal (pantalla verda) o que l’HDMI aparegui com a desconnectat a xrandr.

Implementació: Passos per a la solució

Reinstal·lació neta de drivers

Primer, elimina qualsevol rastre de drivers anteriors i instal·la la versió recomanada. En el meu cas és la 535.

terminal
sudo apt purge nvidia*
sudo apt autoremove
sudo apt install nvidia-driver-535
sudo reboot

Força l’ús de NVIDIA (Mode PRIME)

Has d’indicar al sistema que utilitzi la GPU NVIDIA per controlar les sortides de vídeo.

terminal
sudo prime-select nvidia
sudo reboot

Verificació

Estat del Driver

Executa nvidia-smi. Ara hauries de veure que la GPU NVIDIA té processos actius i que la columna Disp.A (Display Active) està en On:

terminal
nvidia-smi

Output esperat:

+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 535.288.01             Driver Version: 535.288.01   CUDA Version: 12.2     |
|-----------------------------------------+----------------------+----------------------+
| 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 GTX 960M        Off | 00000000:01:00.0  On |                  N/A |
| N/A   52C    P0              N/A / 200W |   1242MiB /  4096MiB |     26%      Default |
|                                         |                      |                  N/A |
+---------------------------------------------------------------------------------------+

+---------------------------------------------------------------------------------------+
| Processes:                                                                            |
|  GPU   GI   CI        PID   Type   Process name                            GPU Memory |
|        ID   ID                                                             Usage      |
|=======================================================================================|
|    0   N/A  N/A      1380      G   /usr/lib/xorg/Xorg                          612MiB |
|    0   N/A  N/A      2130      G   cinnamon                                     67MiB |
+---------------------------------------------------------------------------------------+

Detecció de Monitor

Executa xrandr. El monitor que abans apareixia com a desconnectat ara s’ha de mostrar connectat i amb la seva resolució nativa:

terminal
xrandr | grep -w connected

Output esperat:

HDMI-0 connected primary 3840x2160+0+0 (normal left inverted right x axis y axis) 697mm x 392mm
eDP-1-1 connected 1920x1080+3840+1080 (normal left inverted right x axis y axis) 344mm x 193mm

Què passa si encara falla?

Si després de tot l’anterior segueixes sense senyal a l’HDMI, és probable que hi hagi un problema de configuració de sessió o un bug específic del kernel. Si és així, no tinc la resposta a com arreglar el teu problema.

Referències

  • Ubuntu
  • NVIDIA
Compartir: