Instalación de Controladores NVIDIA en Debian 12
La instalación de los controladores de NVIDIA en Linux ha sido tradicionalmente un desafío, especialmente en distribuciones como Debian, donde las políticas del software libre a menudo complican el proceso.
En este post, te explicaré una forma sencilla de instalar los controladores de NVIDIA utilizando los repositorios oficiales de Debian. Además, al final del artículo, aprenderás a instalar una herramienta clave llamada Nvidia Optimus, que te brindará la capacidad de seleccionar qué tarjeta gráfica utilizará tu equipo.
Esta herramienta es especialmente útil en portátiles, ya que es común que estos dispositivos presenten problemas al emitir video a través de los puertos, una situación que puede ser fácilmente con esta herramienta.
Identificación de Nuestra GPU
Antes de embarcarnos en la instalación y configuración, es fundamental conocer el hardware de nuestro equipo. Para averiguar qué tarjetas gráficas están disponibles en nuestro sistema, utilizaremos el siguiente comando:
javiercruces@HPOMEN15:~$ lspci -nn | egrep -i "3d|display|vga"
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GA106M [GeForce RTX 3060 Mobile / Max-Q] [10de:2520] (rev a1)
06:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Cezanne [Radeon Vega Series / Radeon Vega Mobile Series] [1002:1638] (rev c5)
Como se puede apreciar en la salida del comando anterior, mi equipo portátil cuenta con dos tarjetas gráficas. Identificar el modelo es crucial, ya que si optamos por una instalación manual del controlador, necesitaremos el específico para nuestra GPU.
No obstante, en Debian contamos con una utilidad que simplifica este proceso, indicándonos qué controlador debemos instalar. Sin embargo, para acceder a esta utilidad, es necesario modificar el archivo de repositorios de Debian.
Para llevar a cabo esta modificación, añadiremos la sección “non-free” a nuestros repositorios utilizando un editor de texto de nuestra preferencia:
javiercruces@HPOMEN15:~$ sudo nano /etc/apt/sources.list
deb http://deb.debian.org/debian/ bookworm main contrib non-free non-free-firmware
Recuerda que cada vez que modifiques este archivo debes ejecutar la actualización de los repositorios para que los cambios surtan efecto.
javiercruces@HPOMEN15:~$ sudo apt update -y
Con nuestros repositorios debidamente actualizados, procederemos a instalar el script de detección de NVIDIA con el siguiente comando:
javiercruces@HPOMEN15:~$ sudo apt install nvidia-detect
Ahora ejecutaremos el script de NVIDIA; como podrás observar, nos proporcionará información detallada sobre nuestra tarjeta gráfica NVIDIA, así como los diversos controladores compatibles y el paquete de Debian recomendado para la instalación:
javiercruces@HPOMEN15:~$ nvidia-detect
Detected NVIDIA GPUs:
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GA106M [GeForce RTX 3060 Mobile / Max-Q] [10de:2520] (rev a1)
Checking card: NVIDIA Corporation GA106M [GeForce RTX 3060 Mobile / Max-Q] (rev a1)
Your card is supported by all driver versions.
Your card is also supported by the Tesla drivers series.
Your card is also supported by the Tesla 470 drivers series.
It is recommended to install the
nvidia-driver
package.
Instalación del driver recomendado
Antes de instalar los controladores, debes obtener los encabezados del kernel adecuados para que el controlador de NVIDIA pueda compilar correctamente.
En un sistema típico de 64 bits que utiliza el kernel predeterminado, simplemente ejecutas:
javiercruces@HPOMEN15:~$ sudo apt install linux-headers-amd64
Para sistemas de 32 bits con el kernel no-PAE, en su lugar, realizarías la siguiente instalación:
javiercruces@HPOMEN15:~$ sudo apt install linux-headers-686
Una vez instaladas las dependencias del controlador, procederemos a instalarlo:
javiercruces@HPOMEN15:~$ sudo apt install nvidia-driver -y
Durante la instalación, es probable que encuentres una pantalla típicamente azul que te informa sobre un conflicto con el controlador “nouveau”, el cual es el driver instalado automáticamente por Debian debido a sus características de software libre. Simplemente haz clic en “OK” en esta pantalla y continúa con el proceso de instalación.
Al concluir la instalación, será necesario reiniciar tu equipo para cargar el módulo de NVIDIA. Después de reiniciar, puedes verificar si se ha cargado correctamente utilizando el siguiente comando. Utilizando la barra inclinada (/), puedes filtrar la salida escribiendo la palabra “nvidia”, lo que te llevará directamente a la información relevante de tu tarjeta gráfica, permitiéndote confirmar que el módulo de NVIDIA está cargado.
Debes comprobar que en la línea “Kernel driver in use” aparezca el módulo nvidia.
javiercruces@HPOMEN15:~$ lspci -knn | less
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GA106M [GeForce RTX 3060 Mobile / Max-Q] [10de:2520] (rev a1)
DeviceName: NVIDIA Graphics Device
Subsystem: Hewlett-Packard Company GA106M [GeForce RTX 3060 Mobile / Max-Q] [103c:88d1]
Kernel driver in use: nvidia
Kernel modules: nouveau, nvidia_current_drm, nvidia_current
Puede que no te hayas dado cuenta pero ahora en tu escritorio tendrás una app llamada nvidia-settings con la cual podrás configurar tu gráfica .
Ademas si quieres ver desde la linea de comandos información de tu GPU NVIDIA tienes a tu disposición el siguiente comando :
javiercruces@HPOMEN15:~$ nvidia-smi
Fri Dec 29 02:04:58 2023
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 525.125.06 Driver Version: 525.125.06 CUDA Version: 12.0 |
|-------------------------------+----------------------+----------------------+
| 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 ... On | 00000000:01:00.0 Off | N/A |
| N/A 42C P5 10W / 80W | 296MiB / 6144MiB | 12% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 3246 G /usr/lib/xorg/Xorg 117MiB |
| 0 N/A N/A 3442 G /usr/bin/gnome-shell 32MiB |
| 0 N/A N/A 4807 G ...on=20231218-080113.411000 104MiB |
| 0 N/A N/A 5802 G ...RendererForSitePerProcess 38MiB |
+-----------------------------------------------------------------------------+
javiercruces@HPOMEN15:~$
¡Felicidades, Maestro de los Drivers NVIDIA! Has desbloqueado un logro épico en el reino de la informática. No cualquiera llega hasta aquí; no quiero desilusionarte, pero ¿has verificado que los puertos HDMI y DisplayPort de tu equipo funcionan correctamente?
En este punto, se abren dos posibles caminos:
En el primer escenario, tus puertos funcionan a la perfección sin requerir intervención adicional. Si este es tu caso, felicidades, parece que Dios tiene favoritos.
Si, por el contrario, al igual que yo no eres uno de ellos y has comprobado que los puertos no emiten video (el monitor no recibe señal a pesar de que Debian lo detecte),
Si te ocurre este problema puedes encontrar un post en esta misma pagina explicando una posible solución , para ello haremos uso de la herramienta nvidia optimus . Te dejo el enlace a continuación https://www.javiercd.es/posts/drivers/nvidia_optimus/nvidia_optimus/
