· 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.

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).
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.
nvidia-smiOutput 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í:
nvidia-smiFixa’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.
sudo apt purge nvidia*
sudo apt autoremove
sudo apt install nvidia-driver-535
sudo rebootForça l’ús de NVIDIA (Mode PRIME)
Has d’indicar al sistema que utilitzi la GPU NVIDIA per controlar les sortides de vídeo.
sudo prime-select nvidia
sudo rebootVerificació
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:
nvidia-smiOutput 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:
xrandr | grep -w connectedOutput 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 193mmQuè 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