Dette er hovedutgivelsen r580 av NVIDIAs proprietære driver, som inneholder fastvare, kjernedrivere, brukerlanddrivere knyttet til OpenGL, Vulkan og maskinvareakselerasjon, og tilbyr nyttige verktøy for NVIDIA kort fra Maxwell til Blackwell.
Anbefalt(e) kjerneversjon(er) å bruke: linux 6.15.x - 7.0.x
Nedlasting: https://us.download.nvidia.com/XFree86/Linux-x86_64/580.159.04/NVIDIA-Linux-x86_64-580.159.04.run
CUDA-13.0.3 (for å bygge inn direkte CUDA støtte i diverse pakker som FFmpeg eller OBS-Studio; installer etter å ha fulgt denne siden)
GTK-3 (for nvidia-settings; installer etter å ha fulgt denne siden)
NVIDIA-VA-API-Driver-0.0.17 (for VA-API støtte; installer etter å ha fulgt denne siden)
OpenCL-SDK-2026.05.29 (for bruk av OpenCL drivere)
Vulkan-SDK-1.4.350.0 (for å bruke Vulkan drivere)
Wayland-1.25.0 (påkrevd for Wayland støtte)
Xorg-Server-21.1.23 (påkrevd for å kjøre nvidia-xconfig, som i Hva nå?; installere etter å ha fulgt denne siden)
Installer NVIDIA driveren ved å kjøre følgende kommando som
root bruker:
sh NVIDIA-Linux-x86_64-610.43.02.run -z \
-j $(nproc) \
-k `uname -r` \
--no-peermem \
--override-file-type-destination=OPENCL_WRAPPER_LIB:/tmp/nvidia \
--override-file-type-destination=OPENCL_WRAPPER_SYMLINK:/tmp/nvidia
-z: Denne parameteren
deaktiverer kontroll for å se om nouveau kjernedriveren er lastet inn, noe som kan
være hvis nouveau ikke er svartelistet
av modprobe ennå.
Ellers vil driveren klage.
-j $(nproc): Dette fungerer
slik MAKEFLAGS er satt opp.
Samtidigheten er begrenset med mindre denne parameteren brukes.
-k : Denne parameteren angir
kjerneversjonen/navnet som NVIDIA driveren skal bygge mot.
`uname
-r` er brukt, som etterligner oppførselen til
driveren og de fleste tredjeparts kjernemodulbyggesystemer. Dette
er nødvendig hvis kjerneversjonen/navnet du vil at NVIDIA skal
bygge mot er forskjellig fra det uname -r rapporter. Hvis du for
eksempel vil bygge mot `uname
-r`7.0.11 men
uname -r rapporter
6.19.12, må du bruke -k 7.0.11. uname -r rapporter hvilken
vertskjerne som brukes, noe som kan skape problemer i en chroot.
`command` brukes til å
returnere resultatet av en kommando, så hvis 7.0.11 er gitt, bør du fjerne backticks siden den
strengen ikke er en kommando. Hvis du vil bygge mot noe som
7.1, der det er en ny mindre eller
større versjon, men ikke en feilrettingsutgivelsease, .0 må ha suffiks slik at det ser ut som
7.1.0. For å se hvilke
kjernenavn/versjoner som er tilgjengelige å bygge mot, se i
/usr/lib/modules mappen.
--no-peermem: Denne
parameteren deaktiverer bygging av peermem (eller NVIDIA Peer Memory) kjernemodul.
Den brukes for datasentre. Bruk av -A
vil på egenhånd vise deg hvilke nøyaktige enheter Peer Memory
kjernemodulen dekker. Hvis du trenger det, fjern denne parameteren.
--override...=OPENCL_WRAPPER...:/tmp/nvidia:
Disse parameterne deaktiverer installasjon av NVIDIA OpenCL ICD
lasteren til fordel for OpenCL-SDK-2026.05.29, som er mer
generisk og støtter NVIDIA OpenCL driverne. Hvis 32-biters
kompatibilitetsbiblioteker installeres, vil driveren advare flere
ganger om at libOpenCL biblioteket
finnes. Fortsett å godta for å fortsette installasjonen.
--print-recommended-kernel-module-type:
Når den brukes, vil driveren fortelle deg hvilken kjernemodultype
som anbefales, og deretter avslutte. Det anbefales å bruke denne
hvis du ikke er kjent med å installere NVIDIA driveren via
runfilen. Deretter installerer du driveren normalt, og deretter
velger du den anbefalte kjernemodultypen når du blir bedt om det.
-A: Dette alternativet brukes til å gi
alle alternativene du kan bruke til å justere hvordan
installasjonen av driveren skal håndteres.
Driveren kan stille deg flere spørsmål, gi diverse advarsler og generelt si mye. Bare gå gjennom instruksjonene.
Kildekoden du bygde kjernen fra må være på samme sted som du
bygde kjernen fra. Hvis du for eksempel bygde kjernen i
/sources/linux-6.16.1, kildekoden
skal bli værende der og må ikke slettes før tredjeparts modulene
er bygget. Noen Linux distribusjoner omgår dette ved å installere
utviklingsfiler i /usr/src eller
bruke DKMS, men det er utenfor omfanget av denne boken.
Du kan støte på diverse byggefeil. Dette skjer vanligvis fordi modulkoden er inkompatibel med den gjeldende kjerneversjonen. Hvis dette skjer, kan det i de fleste tilfeller fikses ved å nedgradere kjernen. Når en ny driverutgivelse kommer, vil driveren mest sannsynlig støtte den aktuelle kjerneversjonen. Øverst i denne delen er den anbefalte kjerneserien som skal brukes med denne driveren nevnt for å gi en idé om hva den ideelle kjerneversjonen å bygge mot er.
Når du gjenoppbygger/oppgraderer kjernen, må du også installere NVIDIA kjernemodulene på nytt.
Kjernemoduler installeres i en versjonert mappe som, når de bygges mot en annen kjerneversjon, ikke lenger vil samsvare med den oppstartede kjerneversjonen og kan ikke brukes. Videre er det en limmekanisme bygget, så eventuelle endringer i kjernen kan ødelegge den limmekanismen. For kjernemoduler i Linux kildetreet, kjent som førstepartsmoduler, blir de oppdatert og gjenoppbygd sammen med kjernen, slik at det ikke oppstår problemer for førstepartsmoduler. Tredjepartsmoduler blir imidlertid ikke det, og må oppdateres/gjenoppbygges.
Hvis du oppdaterte eller endret kjernen (via forskjellige alternativer) der NVIDIA driveren ble bygget mot den, må du installere driveren på nytt.
/usr/lib/modprobe.d/nouveau.conf
/usr/lib/modprobe.d/nvidia_drm.conf
/usr/lib/modprobe.d/nvidia.conf
Bruk av denne driveren kan føre til kompromisser. Så langt ser disse problemene ut til å være begrenset til Wayland og vindusbehandlere. Listen nedenfor dokumenterer de kjente pakkene som har problemer med denne driveren.
Mutter: Kompiler denne pakken ved å bruke oppdateringer og sed kommandoer nevnt i BLFS først, og kjør deretter de påfølgende kommandoene.:
find -name \*.c \
-exec sed -i '/<EGL\/eglmesaext.h>/d' {} \; &&
find -name \*.h \
-exec sed -i '/<EGL\/eglmesaext.h>/d' {} \; &&
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-D tests=disabled \
-D profiler=false \
-D bash_completion=false \
-D wayland_eglstream=true \
-D egl_device=true \
.. &&
ninja
Installer som root med
ninja
install.
Xorg-Server-21.1.23: Selv om
denne pakken fungerer helt fint, vil TearFree oppdateringen
og konfigurasjonsfilen være ubrukelig siden Xorg driveren
(nvidia_drv) vil bli brukt i
stedet for modusinnstillingsdriveren. TearFree
oppdateringen og konfigurasjonsfilen er
modusinnstillingsspesifikk. Derfor må du finne en annen
måte å bli kvitt skjermriving hvis det er ditt ønske. Slike
rettelser kan redusere ytelsen drastisk, slik at 144 FPS
kan falle til 60 FPS.
For at driverne skal fungere ordentlig, må enhetsnoder opprettes
på forhånd. Under visse forhold eller konfigurasjoner opprettes
ikke disse automatisk når en skjermserver startes. Som
root bruker, opprett en udev
regel for alltid å opprette disse nodene ved oppstart:
mkdir -pv /usr/lib/udev/rules.d &&
cat > /usr/lib/udev/rules.d/60-nvidia.rules << "EOF"
# Always create NVIDIA device nodes at boot time.
ACTION=="add|bind", \
ATTR{vendor}=="0x10de", \
ATTR{class}=="0x03[0-9]*", \
DRIVER=="nvidia", \
TEST!="/dev/nvidiactl", \
RUN+="/usr/bin/nvidia-modprobe", \
RUN+="/usr/bin/nvidia-modprobe -c0 -u"
EOF
Nouveau og NVIDIAFB støtte ble kompilert inn i kjernen for å
sikre at NVIDIA kjernemodulene kunne bygges. Nouveau og NVIDIAFB
er imidlertid i konflikt med NVIDIA kjernemodulene, så de bør
svartelistes. I tillegg kan det ha blitt bygget andre moduler som
kan komme i konflikt, og bør også deaktiveres. Som root bruker, opprett filen /usr/lib/modprobe.d/nouveau.conf for å
svarteliste Nouveau og NVIDIAFB, samt andre motstridende moduler:
mkdir -pv /usr/lib/modprobe.d &&
cat > /usr/lib/modprobe.d/nouveau.conf << "EOF"
# Begin /usr/lib/modprobe.d/nouveau.conf
blacklist nouveau
blacklist nvidiafb
blacklist nova_core
blacklist nova_drm
# End /usr/lib/modprobe.d/nouveau.conf
EOF
DRM kjernemodulen bruker ikke modusinnstilling som standard, noe
som er nødvendig for Wayland kompositorer. Gjør det mulig å bruke
modusinnstilling som root bruker:
cat > /usr/lib/modprobe.d/nvidia_drm.conf << "EOF"
# Begin /usr/lib/modprobe.d/nvidia_drm.conf
options nvidia_drm modeset=1
# End /usr/lib/modprobe.d/nvidia_drm.conf
EOF
Når GPU-en går i hvilemodus/dvalemodus, mister den som standard
alle minnetildelinger. Du kan forhindre dette ved å angi to
alternativer for NVIDIA modulen. Hvis du ikke bruker
hvilemodus/dvalemodus, kan du hoppe over å lage følgende
konfigurasjonsfil. Ellers, som root bruker:
cat > /usr/lib/modprobe.d/nvidia.conf << "EOF"
# Begin /usr/lib/modprobe.d/nvidia.conf
options nvidia NVreg_PreserveVideoMemoryAllocations=1
options nvidia NVreg_TemporaryFilePath=/var/tmp
# End /usr/lib/modprobe.d/nvidia.conf
EOF
Hvis du installerte libglvnd-1.7.0 og libgbm-1.0.7, burde du ikke trenge Mesa som en avhengighet for noen pakke i noen av LFS bøkene. Du må sørge for at du installerer Xorg-Server-21.1.23 og/eller Xwayland-24.1.12 fra denne boken, ettersom disse pakkene inkluderer viktige oppdateringer som omgår behovet for et Mesa spesifikt grensesnitt som brukes til å laste inn Mesa spesifikke drivere for programvaregjengivelse.
Med dette Mesa frie oppsettet, kan du hoppe til Kapittel 14, X11 og forvent problemfri bruk. Hvis du vil, kan du imidlertid også installere CUDA i denne underseksjonen for å forbedre ytelsen, noe som er opp til deg.