· Jose Antonio López  · 4 min lectura

Solucionar pantalla verde en Ubuntu 22.04 con monitor secundario

Guía para solucionar la pantalla verde con segundo monitor y los bloqueos en Ubuntu 22.04 con gráficos híbridos NVIDIA.

Guía para solucionar la pantalla verde con segundo monitor y los bloqueos en Ubuntu 22.04 con gráficos híbridos NVIDIA.

Objetivo

El objetivo de este artículo es resolver un problema complejo en Ubuntu 22.04 donde el segundo monitor no se detecta (HDMI-1 disconnected. La pantalla se pone verde al conectar el cable y mucas veces el sistema se congela por completo.

Este error suele ser una combinación de un driver corrupto y una mala configuración de PRIME en portátiles con gráficos híbridos (Intel + NVIDIA).

CaracterísticaDescripción
Sistema OperativoUbuntu 22.04 LTS
GPU DetectadaNVIDIA GeForce GTX 960M
Driver Utilizadonvidia-driver-535
SíntomasPantalla verde, HDMI desconectado, congelamientos del sistema

Diagnóstico del Problema

Identificar Driver Corrupto

Si el driver no está cargado o está mal instalado, al ejecutar nvidia-smi obtendrás un error de comunicación. Esto sucede a menudo tras una actualización de kernel fallida o conflictos con nouveau.

terminal
nvidia-smi

Output de error típico:

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ón de PRIME (Causa Raíz)

En muchos portátiles, la pantalla interna está conectada a la Intel, pero el puerto HDMI está cableado directamente a la GPU NVIDIA.

Si el driver funciona pero el HDMI no da señal (o da pantalla verde), verás algo así:

terminal
nvidia-smi

Fíjate en la columna Disp.A Off (Display Active Off) y la ausencia de procesos 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                                                           |
+---------------------------------------------------------------------------------------+

Ese Disp.A Off indica que la NVIDIA no está controlando la salida de pantalla, lo que causa el error de señal (pantalla verde) o que el HDMI aparezca como desconectado en xrandr.

Implementación: Pasos para la solución

Reinstalación limpia de drivers

Primero, elimina cualquier rastro de drivers anteriores e instala la versión recomendada. En mi caso es la 535.

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

Fuerza el uso de NVIDIA (Modo PRIME)

Debes indicar al sistema que use la GPU NVIDIA para controlar las salidas de video.

terminal
sudo prime-select nvidia
sudo reboot

Verificación

Estado del Driver

Ejecuta nvidia-smi. Ahora deberías ver que la GPU NVIDIA tiene procesos activos y que la columna Disp.A (Display Active) está en On:

terminal
nvidia-smi

Output esperado:

+---------------------------------------------------------------------------------------+
| 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ón de Monitor

Ejecuta xrandr. El monitor que antes aparecía como desconectado ahora debe mostrarse conectado y con su resolución nativa:

terminal
xrandr | grep -w connected

Output esperado:

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

¿Si aún falla?

Si después de todo lo anterior sigues sin señal en el HDMI, es probable que haya un problema de configuración de sesión o un bug específico del kernel. Si es así no tengo la respuesta a cómo arreglar tu problema.

Referencias

  • Ubuntu
  • NVIDIA
Compartir: