Installer des pilotes graphiques sur Debian 13

Bonjour tout le monde,

Je rencontre un sujet que je n’arrive pas à régler après plusieurs jours : Installer des pilotes sur Debian 13 pour une carte graphique Nvidia Geforce RTX 3060 et l’utiliser avec Docker pour faire tourner des LLM

Je trouve autant de méthodes que de sites internet… J’ai compris que les pilotes fournis par Debian ne sont plus à jour, je cherche donc à avoir des plus récents. Et là, c’est vraiment le dawa.

Les objectifs :

Installer le pilote récent

  • Là, je suis perdu.

Installer tout ce qui est nécéssaire au fonctionnement avec docker

  • Le Nvidia Container Toolkit
sudo apt install nvidia-container-toolkit -y

Visiblement, cela n’existe pas dans les dépôts officiels et les dépôts nvidia ne sont pas signés.

C’est si difficile que ça ? :sweat_smile:

Je devrais pouvoir t’aider, je prévois de faire un serveur IA basé sur Yunohost. Pour l’instant j’ai testé avec Linux Mint https://innovation.iha.unistra.fr/books/robotique-open-source/page/assembler-un-pc-dia-en-2026#bkmrk-5070-ti
Dans les dépôts Ubuntu il y a 2-3 trucs pratiques, par exemple fixer la version du driver :

nvidia-driver-pinning-570

Question 1 : Ce sera un serveur pur ou tu as besoin de l’accélération graphique pour l’affichage sur un écran aussi ? Moi sur mon serveur j’ai un dual boot Linux Mint et Yunohost.
Si c’est un serveur pur, on veut accéder dans Docker aux capacités Compute d’un GPU, essentiellement fournie par NVidia Cuda :
sudo apt -V install libnvidia-compute nvidia-dkms (plutôt que sudo apt install nvidia-driver)

Question 2 : C’est pour entrainer/fine-tuner des modèles ou seulement les exécuter ?

Question 3 : C’est pour quelles applications IA ? En fonction, il peut falloir une version de Cuda différente. cf. https://innovation.iha.unistra.fr/books/robotique-open-source/page/installation-de-machine-avec-rt-kernel-et-acceleration-graphique#bkmrk-vérification-de-la-c

Pour Debian/Yunohost j’avais fait ça mais c’est pas à jour :
https://innovation.iha.unistra.fr/books/robotique-open-source/page/installation-de-machine-avec-rt-kernel-et-acceleration-graphique#bkmrk-gpu
Visiblement sur debian 13 il n’y a que le driver 590 qui est proposé, mais le 570/580 fonctionne depuis les dépôts debian 12 https://forums.developer.nvidia.com/t/nvidia-driver-pinning-580-missing-for-debian-13/361642

Si tu installes docker sur un serveur public il faudrait suivre ça pour ne pas transformer docker en faille : https://innovation.iha.unistra.fr/books/robotique-open-source/page/deploiement-de-tp-de-simulation-avec-dev-container#bkmrk-nvidia-sous-linux-pu

Merci, voilà ce que j’ai :

  1. Serveur pur, pas d’écran
  2. Seulement exécuter, avec llama.cpp
  3. Pour l’utiliser avec OpenwebUI et d’autres outils

Tu prévois d’utiliser ça ? https://github.com/ai-dock/llama.cpp-cuda

D’abord

wget https://developer.download.nvidia.com/compute/cuda/repos/$distro/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt update

Ensuite à mon avis faut que t’installes
sudo apt install nvidia-driver-pinning-570 installe CUDA 12.8
Si t’installes 580 ou 590 tu seras en cuda 13, ce qui est souvent trop récent pour les projets

Ensuite :
sudo apt -V install libnvidia-compute nvidia-dkms
sudo apt install cuda-drivers

Si besoin :

  1. Installer le SDK CUDA sudo apt install cuda-toolkit
  2. puis les paquets GDS sudo apt install nvidia-gds (qui contient nvidia-fs kernel module)

Enfin installer nvidia-container-toolkit en sécurisant Docker en rootless mode :

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 update
sudo apt install nvidia-container-toolkit
sudo nvidia-ctk runtime configure --runtime=docker --config=$HOME/.config/docker/daemon.json
sudo systemctl --user restart docker
sudo nvidia-ctk config --set nvidia-container-cli.no-cgroups --in-place
sudo reboot

Puis tester nvidia-container-toolkit :

docker run --rm --runtime=nvidia --gpus all ubuntu nvidia-smi

Note : sur cette dernière ligne on lance docker sans sudo, donc via notre utilisateur, c’est ce qu’on appelle rootless-mode (« mode où on a pas besoin d’être root »), cf.
https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html#rootless-mode

Sinon vu que debian 13 supporte pas le driver 570, et si ton appli supporte CUDA 13.X, le plus simple serait :
sudo apt install nvidia-driver-pinning-590
puis tout pareil

J’ai réussi la première étape, je n’ai pas encore entamé la seconde.

Pour ma part, les paquets libnvidia-compute nvidia-dkms n’ont pas été trouvés, ça coinçait à cette étape.

J’ai donc effectué d’autres recherches et voilà sur quoi je suis tombé :

Méthode 1 : Pilotes en version 550 et Cuda 12

sudo apt install linux-headers-amd64 dkms nvidia-driver nvidia-kernel-dkms nvidia-persistenced

Méthode 2 : Pilotes en dernière version et Cuda 13

sudo apt install linux-headers-amd64 dkms
  • linux-headers-amd64 : les en-têtes du noyau nécessaires à la compilation.
  • dkms : indispensable pour que le module NVIDIA soit reconstruit automatiquement en cas de mise à jour du noyau.
sudo apt install extrepo
sudo extrepo enable nvidia-cuda
  • Une manière alternative de faire sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt update
sudo apt install nvidia-open
sudo reboot

Et Tada :partying_face:

Je m’occupe de la partie Docker cet après-midi :slight_smile:

Sources

Et c’est tout bon pour la seconde partie, merci du coup de main :smiley: