NVidia Treiber unter Debian 13
NVIDIA / CUDA auf Debian Trixie
Grundprinzip
Es gibt drei mögliche Installationswege:
Variante A – Debian-Pakete
- Quelle: offizielle Debian-Repositories
- Vorteil: stabil, distributionsgetestet
- Nachteil: oft ältere Versionen
Variante B – NVIDIA-APT-Repository
- Quelle: NVIDIA-CUDA-Repository
- Vorteil: neuere Treiber- und CUDA-Versionen
- Nachteil: kann Debian überholen und dann zu Inkompatibilitäten führen
Variante C – NVIDIA-Runfile
- Quelle:
.run-Installer direkt von NVIDIA - Vorteil: maximale Kontrolle / sehr aktuelle Versionen
- Nachteil: schlecht in APT integriert, Updates/Kernelwechsel oft problematisch. Ohne Cuda
Wichtigste Regel
Niemals wild mischen
Problematisch ist besonders diese Mischung:
- Wein auf Bier, das rat ich dir!... Bier auf Wein, das rat ich dir!
- Debian-Pakete für Teile des Treibers
- NVIDIA-Repo für andere Teile
- Runfile zusätzlich oder zwischendurch
Das führt leicht zu:
- schwarzem Bildschirm
- GDM-/Wayland-Problemen
nvidia-persistencedFehlern- Versionskonflikten zwischen Kernelmodul und Userspace-Libs
Empfehlung für die Zukunft
Für stabile Systeme:
Debian-only, wenn die älteren Versionen ausreichen
Für neuere CUDA-/Treiber-Versionen:
NVIDIA-APT-Repo, aber:
- Treiber und CUDA aus derselben Quelle
- problematische Major-Upgrades ggf. blockieren, z. B. 595
- funktionierende Version ggf. auf hold setzen, z. B. 590
Runfile nur als Ausnahme
Nur nutzen, wenn APT-Lösungen nicht ausreichen oder bestimmte Spezialfälle nötig sind.
1. Vorbereitung
Debian-Quellen aktivieren
Auf Debian 13 / Trixie besser direkt die vorhandene debian.sources anpassen statt add-apt-repository.
sudo sed -i 's/Components: main/Components: main contrib non-free non-free-firmware/' /etc/apt/sources.list.d/debian.sources
sudo apt update
Basis-Pakete installieren
sudo apt install build-essential gcc dirmngr ca-certificates software-properties-common apt-transport-https dkms curl gpg -y
sudo apt install -y linux-headers-$(uname -r)
2. Vorherige NVIDIA-/CUDA-Installationen bereinigen
Nur nötig bei Wechsel des Installationsweges oder nach kaputten Installationen.
APT-basierte NVIDIA-/CUDA-Pakete entfernen
sudo apt remove 'cuda*' 'nvidia*' --purge
sudo apt autoremove --purge
sudo apt update
Runfile-Treiber entfernen
sudo nvidia-installer --uninstall
oder, wenn direkt aus dem Downloadordner installiert wurde:
cd /home/user/Downloads/Treiber
sudo ./NVIDIA-Linux-x86_64-565.77.run --uninstall
Runfile-CUDA entfernen
sudo /usr/local/cuda-X.Y/bin/cuda-uninstaller
Beispiel:
sudo /usr/local/cuda-13.1/bin/cuda-uninstaller
3. Variante A – Installation nur aus Debian
Versionen prüfen
apt-cache policy nvidia-driver
apt-cache policy nvidia-cuda-toolkit
apt-cache policy nvidia-cudnn
Installation
sudo apt install nvidia-driver nvidia-cuda-toolkit
Optional:
sudo apt install nvidia-cudnn
Eigenschaften
nvccliegt typischerweise in/usr/bin- keine extra PATH-Anpassung nötig
- stabiler, aber oft ältere Versionen
4. Variante B – Installation aus dem NVIDIA-APT-Repository
Wann sinnvoll?
Wenn Debian-Versionen zu alt sind, z. B.:
- Debian bietet 550
- benötigt wird 590+
- oder CUDA 13 statt CUDA 12
NVIDIA GPG-Key hinzufügen
Für Debian 13 / Trixie x86_64:
curl -fsSL https://developer.download.nvidia.com/compute/cuda/repos/debian13/x86_64/8793F200.pub | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-cuda.gpg
NVIDIA-Repository eintragen
cat <<EOF | sudo tee /etc/apt/sources.list.d/nvidia-cuda.sources
Types: deb
URIs: https://developer.download.nvidia.com/compute/cuda/repos/debian13/x86_64/
Suites: /
Signed-By: /usr/share/keyrings/nvidia-cuda.gpg
EOF
Paketliste aktualisieren
sudo apt update
Verfügbare Versionen prüfen
apt-cache policy cuda
apt-cache policy nvidia-driver
apt-cache madison nvidia-driver nvidia-kernel-dkms cuda-toolkit nvidia-cuda-toolkit nvidia-cudnn
Installation
Standard:
sudo apt install cuda nvidia-driver
Wichtig:
Das installiert die aktuell bevorzugte Version aus dem NVIDIA-Repo.
Wenn dort 595 Kandidat ist, wird 595 installiert.
5. Problem: NVIDIA-Repo bietet zu neue Version an
Typischer Fall
- funktionierend: 590
- angeboten: 595
- nach Update: Freeze / schwarzer Bildschirm / GDM hängt
Ursache:
- Treiberversion zu neu für Debian-Kombination
- fehlende oder unpassende Hintergrundpakete
- möglicher Wayland/GDM-Konflikt
6. Funktionierende NVIDIA-Version festhalten
Installierte NVIDIA-/CUDA-Pakete anzeigen
dpkg -l | awk '/^ii/ && $2 ~ /^(nvidia-|libnvidia-|cuda-|libcuda|libnv|xserver-xorg-video-nvidia|firmware-nvidia)/ {print $2}' | xargs -r apt-cache policy
Alle installierten NVIDIA-Pakete auf hold setzen
dpkg -l | awk '/^ii/ && $2 ~ /^(nvidia-|libnvidia-|cuda-|libcuda1|xserver-xorg-video-nvidia)/ {print $2}' | xargs sudo apt-mark hold
Holds anzeigen
apt-mark showhold
Holds wieder entfernen
dpkg -l | awk '/^ii/ && $2 ~ /^(nvidia-|libnvidia-|cuda-|libcuda1|xserver-xorg-video-nvidia)/ {print $2}' | xargs sudo apt-mark unhold
7. NVIDIA-/CUDA-Quellen temporär deaktivieren
Wenn normale Debian-Updates funktionieren sollen, aber NVIDIA/CUDA nicht aktualisiert werden soll.
Quellen sichern/deaktivieren
sudo mv /etc/apt/sources.list.d/cuda-debian13-x86_64.list /etc/apt/sources.list.d/cuda-debian13-x86_64.list.bak
sudo mv /etc/apt/sources.list.d/nvidia-container-toolkit.sources /etc/apt/sources.list.d/nvidia-container-toolkit.list.bak
sudo apt update
Quellen wieder aktivieren
sudo mv /etc/apt/sources.list.d/cuda-debian13-x86_64.list.bak /etc/apt/sources.list.d/cuda-debian13-x86_64.list
sudo mv /etc/apt/sources.list.d/nvidia-container-toolkit.list.bak /etc/apt/sources.list.d/nvidia-container-toolkit.sources
sudo apt update
8. Konkrete ältere Versionen finden und installieren
Verfügbare Versionen anzeigen
apt-cache madison nvidia-kernel-dkms cuda-toolkit nvidia-cuda-toolkit nvidia-cudnn nvidia-driver
Beispiel:
cuda-toolkit | 13.2.0-1 | https://developer.download.nvidia.com/compute/cuda/repos/debian13/x86_64 Packages
cuda-toolkit | 13.1.1-1 | https://developer.download.nvidia.com/compute/cuda/repos/debian13/x86_64 Packages
cuda-toolkit | 13.1.0-1 | https://developer.download.nvidia.com/compute/cuda/repos/debian13/x86_64 Packages
nvidia-cuda-toolkit | 12.4.131~12.4.1-2 | http://deb.debian.org/debian trixie/non-free amd64 Packages
nvidia-cuda-toolkit | 12.4.1-2 | http://deb.debian.org/debian trixie/non-free Sources
Konkrete Version installieren
Beispiel für 590:
sudo apt install \
nvidia-driver=590.48.01-1 \
nvidia-kernel-dkms=590.48.01-1 \
nvidia-driver-libs=590.48.01-1
Je nach System müssen weitere libnvidia-* Pakete zur gleichen Versionsfamilie installiert werden.
Danach sofort hold setzen.
9. Variante C – NVIDIA-Runfile
Nur wenn nötig
Nicht bevorzugt. Nur nutzen, wenn:
- APT-Lösung nicht geht
- bestimmte Version exakt benötigt wird
- Spezialfall / experimentelle Konfiguration
Installation grob
- Debian-/APT-basierte Treiber vermeiden oder entfernen
- Runfile von NVIDIA herunterladen
- aus TTY / ohne laufende GUI installieren
Deinstallation
sudo nvidia-installer --uninstall
oder:
cd /home/user/Downloads/Treiber
sudo ./NVIDIA-Linux-x86_64-565.77.run --uninstall
Nachteil
- APT weiß nichts sauber davon
- Kernelupdates können Treiber brechen
- Mischbetrieb mit Debian-/NVIDIA-Repo besonders fehleranfällig
- Ohne Cuda
10. CUDA für Docker
NVIDIA Container Toolkit Repo hinzufügen
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt-get update
Installation
sudo apt install -y nvidia-docker2 nvidia-container-toolkit
sudo systemctl restart docker
11. Prüfen, was installiert ist
Installierte NVIDIA-/CUDA-Pakete inkl. Quelle und Version
dpkg -l | awk '/^ii/ && $2 ~ /^(nvidia-|libnvidia-|cuda-|libcuda|libnv|xserver-xorg-video-nvidia|firmware-nvidia)/ {print $2}' | xargs -r apt-cache policy
Nur installierte Versionen kompakt
dpkg-query -W -f='${binary:Package}\t${Version}\n' | grep -E '^(nvidia-|libnvidia-|cuda-|libcuda|libnv|xserver-xorg-video-nvidia|firmware-nvidia)'
12. Prüfung nach Installation
Treiberstatus
nvidia-smi
CUDA-Compiler
nvcc --version
Geladene Module
lsmod | grep nvidia
NVIDIA-Fehler im Kernel-Log
sudo dmesg | grep -i nvidia
DKMS-Status
dkms status
13. PATH nur bei NVIDIA-Repo / Runfile nötig
Wenn CUDA aus dem NVIDIA-Repo kommt, liegt nvcc oft unter /usr/local/cuda/bin.
Dann ggf.:
echo 'export PATH=/usr/local/cuda/bin:$PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc
Prüfen:
which nvcc
14. Nouveau nur blockieren, wenn wirklich nötig
Meist nicht mehr zwingend nötig, aber falls Nouveau stört:
echo "blacklist nouveau" | sudo tee /etc/modprobe.d/nvidia-blacklist.conf
sudo update-initramfs -u
sudo reboot
Prüfen:
lsmod | grep nouveau
15. Wayland / GDM Hinweise
Bei Problemen mit NVIDIA kann Wayland mitursächlich sein.
Wayland aktivieren
/etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="quiet nvidia-drm.modeset=1"
Dann:
sudo update-grub
Optional:
ln -s /dev/null /etc/udev/rules.d/61-gdm.rules
Oder in /etc/gdm3/daemon.conf:
WaylandEnable=true
Falls Probleme auftreten
Testweise Wayland deaktivieren:
/etc/gdm3/custom.conf
WaylandEnable=false
16. Sichere Update-Strategie
Wenn funktionierende NVIDIA-Version installiert ist
- NVIDIA-Pakete auf hold setzen
- NVIDIA-/CUDA-Repo ggf. deaktivieren
- normales Debian-Upgrade durchführen
- erst danach bewusst NVIDIA-Version prüfen
Testlauf vor Update
sudo apt -s upgrade
sudo apt -s full-upgrade
17. Merksätze für die Zukunft
Gute Praxis
- eine Installationsstrategie gleichzeitig
- Treiber und CUDA möglichst aus derselben Quelle
- vor Updates prüfen, ob NVIDIA-Major-Version wechselt
- funktionierende NVIDIA-Version festhalten
- Timeshift-Snapshot vor Treiberupdates
Schlechte Praxis
- Debian-Treiber + Runfile + NVIDIA-Repo mischen
- ungetestete Major-Upgrades direkt einspielen
cudablind aktualisieren, ohneapt-cache policyzu prüfen
18. Meine persönliche Entscheidungsvorlage
Wenn Stabilität wichtiger ist:
Debian-Pakete verwenden<span id="more-2416"></span>
Wenn neuere CUDA-/Treiber-Versionen nötig sind:
NVIDIA-Repo verwenden, aber funktionierende Version gezielt pinnen/holden
Wenn Spezialfall / Notlösung:
Runfile nur bewusst und getrennt von APT
Wenn du willst, kann ich dir daraus im nächsten Schritt noch eine kompakte, sehr praktische Markdown-Version zum direkten Einfügen in Obsidian machen — also mit:
- sauberer Überschriftenstruktur
- Warnboxen
- „empfohlener Weg“
- „Notfall-Weg“
- „Troubleshooting“.