Instalar drivers de Nvidia en Ubuntu
Verifica si tienes el driver de video cargado en el kernel. Para esto, suponiendo que tienes una tarjeta Nvida verifica si tienes esta carpeta asi
ls /lib/modules/6.2.14-060214-generic/kernel/drivers/video/
Si no debes agregar el repo de Nvida. Actualmente Nvidia soporta hasta la version Ubuntu 22.04 ya que es la version actual LTS. Si al momento de ver este video la version LTS es diferente debes cambiar este valor en la variable UBUNTU_VERSION del siguiente script.
export UBUNTU_VERSION=ubuntu2204
export BASE_URL=https://developer.download.nvidia.com/compute/cuda/repos
wget $BASE_URL/$UBUNTU_VERSION/x86_64/cuda-keyring_1.0-1_all.deb
Con esto, ya tendremos el paquete para agregar la clave pública GPG del repositorio de CUDA. Para instalar este paquete usaremos dpkg.
dpkg -i cuda-keyring_1.0-1_all.deb
Actualizamos la lista de paquetes
apt-get update
Una vez hecho esto podemos instalar los drivers necesarios.
apt-get -y install cuda-drivers
sudo grub-mkconfig -o /boot/grub/grub.cfg
update-grub
https://docs.nvidia.com/datacenter/tesla/tesla-installation-notes/index.html#ubuntu-lts
Agregamos las librerias de terceros recomendadas por Nvidia.
sudo apt-get install g++ freeglut3-dev build-essential libx11-dev \
libxmu-dev libxi-dev libglu1-mesa-dev libfreeimage-dev libglfw3-dev
Metodo estandar
sudo ubuntu-drivers install
apt install ubuntu-desktop
update-initramfs -u -k all
sudo grub-mkconfig -o /boot/grub/grub.cfg
update-grub
Kernels recientes
Debes tener precaucion cuando instalas un kernel reciente de Linux, lo cual puede realizarse de manera manual o con alguna actualizacion del sistema no LTS, ya que puede que el driver no este disponible para esa version reciente del kernel.
Antes de verificar si existe una version del driver de Nvidia para tu version de kernel debes averiguar cual version del kernel estas usando. Para esto puedes usar rapidamente el siguiente comando.
root@ubuntu:/# uname -r
6.2.0-20-generic
Debes tener cuidado si estas desde un Live USB ya que dicho comando puede mostrar la version del kernel del live USB aun si estas con chroot. Para asegurarte puedes ver la version linkeada al kernel asi.
root@ubuntu:/# ls -gG /boot/initrd.img
lrwxrwxrwx 1 32 May 10 20:31 /boot/initrd.img -> initrd.img-6.2.14-060214-generic
En este caso como puedes darte cuenta la version que se esta usando del kernel es la ultima al dia de hoy la cual es la v6.2.14. Sin embargo el comando uname -r
muestra la version de mi live USB ya que estoy con chroot.
Una vez hecho esto ya podemos verificar si existe una version de los drivers de Nvdia para la version especifica que estamos usando. Puedes listar las versiones disponibles con el siguiente comando:
apt search nvidia | grep "nvidia-driver"
Si no encuentras un driver para tu version del kernel significa que no hay soporte de Nvidia para esa version del kernel. Lo cual, puede causar errores al arrancar el sistema. Lo mas recomendable en este caso es que no utilices el driver de Nvdia o que uses la ultima version del kernel a la que Nvida esta dando soporte. En mi caso es la v5.30. A continuacion de te dejo parte de la salida del comando anterior.
nvidia-driver-515/unknown 515.105.01-0ubuntu1 amd64
nvidia-driver-515-open/lunar 515.105.01-0ubuntu1 amd64
nvidia-driver-515-server/lunar 515.105.01-0ubuntu1 amd64
nvidia-driver-520/unknown 520.61.05-0ubuntu1 amd64
nvidia-driver-520-open/lunar 525.105.17-0ubuntu1 amd64
nvidia-driver-525/unknown 525.105.17-0ubuntu1 amd64
nvidia-driver-525-open/lunar 525.105.17-0ubuntu1 amd64
nvidia-driver-525-server/lunar 525.105.17-0ubuntu1 amd64
nvidia-driver-530/unknown,now 530.30.02-0ubuntu1 amd64
Sin embargo para esa version del driver necesitaria una version del kernel que no esta disponible en los repositorios.
root@ubuntu:/# apt search linux-image-5
...
linux-image-5.15.0-60-generic/now 5.15.0-60.66 amd64
(none)
...
linux-image-5.19.0-40-generic/now 5.19.0-40.41 amd64
Signed kernel image generic
Descargar una version del kernel que no esta en los repos no es la gran cosa, sin embargo no quiero agregar mas complejidad de la que requiere este articulo asi que ire por la v5.15.0 ya que tengo el driver y la imagen de linux en los repositorios disponibles.
Una vez identificada la version que quieres instalar puedes ejecutar el siguiente comando el cual instalara el kernel (si no lo tienes instalado ya) y el driver adecuado.
apt install linux-image-5.15.0-60-generic nvidia-driver-515
Debes tener en cuenta que si este cambio implica instalar una version antigua del kernel a la recomendada para tu sistema operativo tal vez sea mejor intentar otro metodo.