Nvidia ajureiden asennusopas Debian 13
Tämä dokumentti ohjaa nvidia näytönohjaimen ajureiden asennuksen Debian 13 käyttöjärjestelmään.
Alkuperäisissä muistiinpanoissasi oli sekoitettu kaksi eri asennustapaa: virallinen Debian pakettienhallinnan kautta tehtävä asennus sekä Nvidian sivuilta ladattavan manuaalisen .run asennusohjelman käyttö.
HUOM: Linux ympäristöissä on suositeltavaa käyttää ensisijaisesti jakelun omaa
pakettienhallintaa. Se takaa, että ajurit päivittyvät automaattisesti uuden linux kernelin mukana dkms järjestelmän avulla. Jos kuitenkin tarvitset uusimman mahdollisen ajurin suoraan
Nvidialta, käytä manuaalista asennusta.
Tapa 1: Suositeltu asennus Debian pakettivarastoista
Tämä on helpoin tapa asentaa ajurit sekä se muotoutuu täydellisesti järjestelmän päivityksiin.
apt update
apt install nvidia-detect
nvidia-detect
Seuraavaksi riippuvuudet sekä itse ajurit.
apt update
apt install build-essential linux-headers-$(uname -r) dkms
sudo apt install nvidia-driver firmware-misc-nonfree
reboot now
Ja lopuksi vielä tarkistus:
nvidia-smi
Tapa 2: Manuaalinen asennus Nvidian .run-tiedostolla
Jos haluat käyttää suoraan Nvidian sivustolta ladattua ajuripakettia seuraa näitä korjattuja ja täydennettyjä
vaiheita.
Nouveau-ajurin estäminen
Nnouveau ajuri täytyy ottaa pois käytöstä jotta Nvidian oma ajuri voi latautua ongelmitta.
nano /etc/modprobe.d/blacklist-nouveau.conf
blacklist nouveau
options nouveau modeset=0
Initramfs päivittäminen
Debian käyttää oletuksena initramfs järjestelmää. Jos olet erikseen asentanut dracut
järjestelmän, käytä sille tarkoitettua komentoa.
update-initramfs -u
Tai Dracut:
dracut --force
3. Käynnistä järjestelmä uudelleen tekstitilaan
Ajureita ei voi asentaa graafisen käyttöliittymän ollessa käynnissä toisin kuin Windows käyttöjärjestelmässä. Käynnistä tietokone uudelleen ja siirry
cli/terminaaliin tai juokse komento systemctl stop gdm3 tai lightdm.
4. Työkalut sekä kirjastojen asennus
apt update
apt install build-essential gcc-multilib dkms pkg-config libglvnd-dev
apt install xserver-xorg-dev libvulkan1 vulkan-utils linux-headers-$(uname -r)
5. Ajuritiedoston juokseminen
Mene Nvidian virallisille sivuille nvidia.com ja lataa sieltä näytönohjaimellesi oikea linux .run paketti. Muista myös valita Linux 64 bit! Kopio lataus linkki ja käytä wget komentoa saadaksesi ajurit helpoiten tai käytä selainta mikäli olet graafisella käyttöjärjestelmällä.
Juostaan asennustiedosto. Asennusohjelman kysymyksiin vastataan yleensä myöntävästi Yes, erityisesti 32 bit
yhteensopivuuskirjastojen ja automaattisen päivityksen kohdalla.
HUOM: lisäargumentti –dkms Rekisteröi ajurin dynamic kernel lodule supportiin estää ajurin rikkoutumisen
kernel päivityksissä, erittäin tärkeä muista siis lisätä se loppuun!
chmod +x NVIDIA-Linux-x86_64-*.run
./NVIDIA-Linux-x86_64-*.run --dkms
reboot
Uudelleen käynnistyksen jälkeen tarkistetaan että ajurit sekä näytönohjain tunnistautuvat oikein.
nvidia-smi
Tuon komennon pitäisi näyttää näytönohjaimestasi tärkeitä tietoja, esimerkiksi: Näytönohjaimen mallin, ajurien version, lämpötilat virrankulutus/kulutus sekä mikä prosessi käyttää ja kuinka paljon näytönohjainta.
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 580.12 Driver Version: 580.12 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 GeForce RTX 4070 Off | 00000000:01:00.0 On | N/A |
| 30% 42C P8 18W / 200W| 842MiB / 12282MiB | 4% Default |
| | | N/A |
+-----------------------------------------+------------------------+----------------------+
+-----------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=========================================================================================|
| 0 N/A N/A 1548 G /usr/lib/xorg/Xorg 210MiB|
| 0 N/A N/A 1862 G /usr/bin/gnome-shell 165MiB|
| 0 N/A N/A 3120 G /usr/lib/firefox/firefox 245MiB|
| 0 N/A N/A 4876 G /usr/bin/code 222MiB|
+-----------------------------------------------------------------------------------------+
EXTRAA: Docker ja Nvidia container toolkit
Jotta Docker ympäristö voivat hyödyntää näytönohjaimen
tehoa asennetaan Nvidia container toolkit.
1. Pakettien lisääminen ja asennus
Debian 13:ssa suositellaan virallisen Nvidian pakettien lisäämistä uusimman version varmistamiseksi:
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | 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' | tee /etc/apt/sources.list.d/
nvidia-container-toolkit.list
apt update
apt install nvidia-container-toolkit
Sitten vielä Dockerin asennus mikäli sitä ei ole:
curl -fsSL https://get.docker.com | sh
2. Docker-integraation määritys ja käynnistys
Määritetään container toolkit lisäämään Nvidia ajurituki Dockerin runtimeen:
nvidia-container-toolkit runtime configure --runtime=docker
sudo systemctl restart docker
Sitten vielä testaus:
docker run --rm --gpus all nvidia/cuda:12.0.0-base-ubuntu22.04 nvidia-smi
Näytönohjaimen liittäminen Docker konttiin
Tässä vielä esimerkki Dockerin compose.yaml tiedostossa johon täytyy lisätä muutama asia jotta kontti voi käyttää näytönohjainta. Tässä kontissa on tärkeimmät eli vaaditut enviroment muuttujat sekä deploy.
version: "3.9"
services:
gpu-app:
image: nvidia/cuda:12.4.1-base-ubuntu22.04
container_name: gpu-test-container
# Example command (replace with your real app)
command: ["bash", "-c", "nvidia-smi && sleep infinity"]
environment:
- NVIDIA_DRIVER_CAPABILITIES=all
- NVIDIA_VISIBLE_DEVICES=all
deploy:
resources:
reservations:
devices:
- capabilities:
- gpu
Tarkistetaan vielä että komento nvidia-smi toimii kontissa sekä näytönohjain on annettu kontille onnistuneesti. Sekä käynnistetään kontti taustalle.
docker compose up -d
Tarkistus:
docker exec -it gpu-test-container nvidia-smi
Tai.
docker compose exec gpu-app nvidia-smi
Nyt on näytönohjain otettu oikein käyttöön! Näytönohjaimen lisäys antaa teho boostin Debianille sekä muille Distorille mikäli laskentatehoa tarvitsee enemmän mitä prosessori kykenee tarjoamaan. Tämä on todella tärkeä erityisesti silloin kun ylläpidät itsenäistä palvelinympäristöä ja hyödynnät Dockeria resursseja vaativiin tehtäviin, olipa kyseessä sitten suurten mediakirjastojen tehokas käsittely AV1 tai muu enkoodaus tai muiden raskaiden asioiden kuten paikallisen tekoäly mallin pyörittäminen.
