[TUTORIAL] [HOW TO] GPU passthrough to unprivileged, no nesting Jellyfin LXC container. From a novice, for novices.

h4kunamatata

New Member
Mar 8, 2026
2
0
1
I am novice into Proxmox pass-through and have adopted unprivileged, no nesting LXC container as my go to for services and what not.
Trying to get a humble NVIDIA T400 4GB working with Jellyfin was a complete mess trying to follow posts so this is how I got it working novice style:

  1. Proxmox: Install the latest NVIDIA driver and blacklist nouveau
    1. Bash:
      touch /etc/modprobe.d/blacklist-nouveau.conf
      echo "blacklist nouveau" >> /etc/modprobe.d/blacklist-nouveau.conf
      echo "options nouveau modeset=0" >> /etc/modprobe.d/blacklist-nouveau.conf
      update-initramfs -u
      rmmod nouveau
      
      wget https://us.download.nvidia.com/XFree86/Linux-x86_64/580.142/NVIDIA-Linux-x86_64-580.142.run
      chmod +x NVIDIA-Linux-x86_64-580.142.run
      ./NVIDIA-Linux-x86_64-580.142.run
    2. Make sure these files exist and do not move on without them

      Bash:
      ls /dev/ | grep nvidia
      nvidia0
      nvidia-caps
      nvidiactl
      nvidia-uvm
      nvidia-uvm-tools

    3. IMPORTANT AND THE MOST IMPORTANT PART: DO THIS VIA PROXMOX UI > RESOURCES > ADD > DEVICE PASSTHROUGH

      Don't edit
      Bash:
      /etc/pve/lxc/<VMID>.conf
      Because posts online are old and do not take Proxmox version into consideration
      Proxmox 9.1.1/9.1.6 added them like so via GUI, while posts online use mount or require you do to a ton of unnecessary madmax stuff

      This is all I needed, nothing else!!
      Do not copy/paste, add this via Proxmox dashboard


      Bash:
      dev0: /dev/nvidia0
      dev1: /dev/nvidiactl
      dev2: /dev/nvidia-uvm
      dev3: /dev/nvidia-uvm-tools
  2. Send the file to Jellyfin LXC, why download it again??

    Bash:
    pct push <VMID> NVIDIA-Linux-x86_64-580.142.run /root/NVIDIA-Linux-x86_64-580.142.run

  3. Jellyfin Unprivileged, no nesting LXC container: Start/Reboot it to load the changes above.

    IMPORTANT: We only want the driver, no kernel modules

    Bash:
    ./NVIDIA-Linux-x86_64-580.142.run --no-kernel-modules

  4. Congratulations

    Bash:
    root@jellyfin:~# nvidia-smi
    
    Sat Mar 21 23:21:20 2026       
    +-----------------------------------------------------------------------------------------+
    | NVIDIA-SMI 580.142                Driver Version: 580.142        CUDA Version: 13.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 T400 4GB                Off |   00000000:01:00.0 Off |                  N/A |
    | 32%   43C    P0            N/A  /   31W |       0MiB /   4096MiB |      0%      Default |
    |                                         |                        |                  N/A |
    +-----------------------------------------+------------------------+----------------------+
    
    +-----------------------------------------------------------------------------------------+
    | Processes:                                                                              |
    |  GPU   GI   CI              PID   Type   Process name                        GPU Memory |
    |        ID   ID                                                               Usage      |
    |=========================================================================================|
    |  No running processes found                                                             |
    +-----------------------------------------------------------------------------------------+

The only thing I couldn't figure out yet no matter how I tried, is that if I reboot this Proxmox server, Jellyfin LXC won't start because
Bash:
# These files do not exist on Proxmox after reboot
ls /dev/ | grep nvidia

#So I must run this to create them. I can live with that, I shouldn't be rebooting this server anyway.

nvidia-smi

#Check
ls /dev/ | grep nvidia
nvidia0
nvidia-caps
nvidiactl
nvidia-uvm

#Start Jellyfin LXC

pct start <VMID>