Cómo hacer passthrough de una GPU RTX serie 5000 a Proxmox

Kovasky Buezo | Jul 20, 2025 min de lectura

Intro

Recientemente adquirí una RTX 5060 y tuve que consultar múltiples páginas para lograr que el passthrough funcionara. Esta guía detalla los pasos que seguí para hacerlo funcionar en mi servidor.

Prerrequisitos

Estoy usando una máquina virtual con Ubuntu 22.04 y la actualización oficial del kernel 6.14. Es importante mencionar que no pude hacer que esto funcionara con el último kernel genérico instalado a través de Ubuntu Mainline Kernel Installer. El kernel necesita ser proporcionado por Canonical.

Asegurate de tener habilitado Above 4G Decoding en tu BIOS, y si está disponible, también habilitá el soporte ReBAR.

1. Configuración de Grub en Proxmox

En tu servidor Proxmox, abrí el archivo de configuración de grub /etc/default/grub y buscá la línea GRUB_CMDLINE_LINUX_DEFAULT y modificála para que se vea así:

GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt pcie_acs_override=downstream,multifunction nofb nomodeset video=vesafb:off,efifb:off"

Si estás usando una CPU AMD, cambiá intel_iommu=on por amd_iommu=on.

Guardalo y cerralo, y ejecutá el comando update-grub. Para asegurarte de que IOMMU se habilitó correctamente, reiniciá tu servidor y ejecutá el comando dmesg | grep -e DMAR -e IOMMU, deberías ver una línea similar a:

[    0.537225] DMAR: IOMMU enabled

2. Módulos VFIO del Kernel de Proxmox

Editá /etc/modules y agregá las siguientes líneas al final del archivo:

vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd

3. Configurar las Opciones VFIO de Proxmox

Ejecutá los siguientes comandos:

echo "options vfio_iommu_type1 allow_unsafe_interrupts=1" > /etc/modprobe.d/iommu_unsafe_interrupts.conf
echo "options kvm ignore_msrs=1" > /etc/modprobe.d/kvm.conf

Estas opciones ayudan a VFIO a manejar el mapeo de interrupciones y el acceso MSR para el passthrough de la gráfica.

4. Poner en Lista Negra los Drivers de NVIDIA

Ejecutá los siguientes comandos:

echo "blacklist nouveau" >> /etc/modprobe.d/blacklist.conf
echo "blacklist nvidia*" >> /etc/modprobe.d/blacklist.conf

5. Vincular la GPU a VFIO

Ahora, necesitamos decirle a Proxmox que vincule el driver VFIO a nuestra GPU. Para hacer esto, primero tenés que encontrar los IDs de la GPU.

Ejecutá el comando lspci -nn | grep NVIDIA. Deberías ver algo como:

root@pve:~# lspci -nn | grep NVIDIA
af:00.0 VGA compatible controller [0300]: NVIDIA Corporation Device [10de:2d05] (rev a1)
af:00.1 Audio device [0403]: NVIDIA Corporation Device [10de:22eb] (rev a1)

Anotá los IDs, particularmente: 10de:2d05 y 10de:22eb. Estos valores hexadecimales identifican tu modelo específico de GPU y controlador de audio.

Ejecutá el comando echo "options vfio-pci ids=10de:2d05,10de:22eb" > /etc/modprobe.d/vfio.conf, reemplazando los IDs apropiadamente.

Después, ejecutá update-initramfs -u y reiniciá tu servidor.

6. Conectar la GPU a la VM

Primero, asegurate de que tu VM esté apagada. Luego, para conectar la GPU a la VM, navegá a la configuración de Hardware y seleccioná Add -> PCI Device. Hacé clic en Raw Device y buscá la GPU en el desplegable. Debería verse así:

Proxmox PCI Device Hardware Selection

Asegurate de habilitar All Functions y PCI-Express mientras mantenés ROM-Bar y Primary GPU desmarcados.

NVIDIA RTX 5000 Hardware Passthrough Options.

Si preferís acceso GUI a tu sistema, asegurate de que Display esté configurado en default.

NVIDIA RTX 5000 Hardware Passtrough Options.

Ahora, encendé tu VM.

7. Instalar los Drivers de NVIDIA

Para que la tarjeta funcione correctamente, necesitás instalar los últimos drivers nvidia-open (575 al momento de escribir esto).

Primero, desinstalá los drivers viejos:

sudo apt-get remove --purge '^nvidia-.*'
sudo apt autoremove
reboot

Luego, instalá las dependencias:

sudo apt install pkg-config libglvnd-dev dkms build-essential libegl-dev libegl1 libgl-dev libgl1 libgles-dev libgles1 libglvnd-core-dev libglx-dev libopengl-dev gcc make 

Finalmente, instalá los drivers y reiniciá:

sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update 
sudo apt install nvidia-driver-575-open
reboot

Para confirmar que todo funciona, ejecutá nvidia-smi. Deberías ver algo como:

NVIDIA RTX 5000 Hardware Passtrough Options.

Asegurate de deshabilitar el display por defecto para que el sistema use la GPU NVIDIA como su GPU primaria. Es importante mencionar que las opciones ROMBar y Primary GPU en la pestaña de hardware deben estar deshabilitadas, de lo contrario el sistema no podrá encender.

Listo!

Si todos los pasos fueron exitosos, deberías haber hecho passthrough de tu GPU RTX serie 5000.

Recursos

He utilizado estos recursos para crear esta guía.