Gentoo Logo

Gentoon Linuxin nVidia-opas

Sisällysluettelo:

1.  Johdanto

NVidian ajurit rakennetaan tiettyä ydintä varten. Niissä on binääriosio, joka tekee raskaan työn ja näyttökortin kanssa kommunikoinnin. Ajurit koostuvat kahdesta osasta, ytimen moduulista ja X11-ajurista. Molemmat ovat samassa paketissa. Johtuen tavasta jolla ajurit on pakattu, joitain valintoja pitää tehdä ennen asennusta.

Nvidia-drivers sisältää ajurit kaikille korteille eri versioissa käytettävän laitteen iän mukaan. Käytössä on eclass-mekanismi, joka pyrkii tunnistamaan laitteen ja asentaa sopivan version.

2.  Ajurien sopivuus

Nvidia-drivers

Nvidia-drivers Tukee kaikkia nVidian näytönajureita. Saatavilla on eri versioita, joista asennetaan laitteeseen sopiva.

Uudemmat laitteet, kuten GeForcen 400-, 300-, 200-, 100-, 9-, 8-, 7-, ja 6-sarjojen edustajat toimivat uusimmilla versioilla

FX 5 -sarjan edustajat käyttävät versioita 173.xx eli vaikkapa nvidia-drivers-173.14.15. Näiden kanssa pitää peittää >=x11-drivers/nvidia-drivers-174.00 tiedostossa /etc/portage/package.mask. Näin uudemmat toimimattomat ajurit eivät asennu.

GeForcen 3- ja 4-sarjalaiset käyttävät ajuriversioita 96.xx. Näitä varten peitetään >=x11-drivers/nvidia-drivers-97.00 tiedostossa /etc/portage/package.mask, jotteivät uudemmat ajurit asennu.

NV2x-piiriä käyttävät laitteet, kuten TNT, TNT2, GeForce ja GeForce2 vaativat eivät toimi nvidian ajureilla, vaan vain xf86-video-nouveaulla (suositeltavampi) tai xf86-video-nv (vanhempi).

Ajuriyhteensopivuudesta x86- ja x86-64-alustoilla on lisätietoja nvidian ajurijulkaisutiedotteessa.

3.  Korttien säätäminen

Ytimen asetukset

Nvidian ajurit käyttävät nykyistä ydintä. Ajurit asentuvat moduuliksi, joten ytimeen pitää asentaa moduulituki. Jos ydin on tehty komennolla genkernel all, kaiken pitäisi olla kunnossa. Muutoin pitää tarkistaa, että moduulit ovat käytössä:

Koodilistaus 3.1: Moduulituen lisäys

Loadable module support --->
  [*] Enable loadable module support

Myös Memory Type Range Register pitää olla päällä:

Koodilistaus 3.2: MTRR:n käyttö

Processor and Features --->
  [*] MTRR (Memory Type Range Register) support

Jos käyhtössä on AGP-kortti, voi käyttää agpgart-tukea ytimestä, joko käännettynä tai moduulina. Jollet käytä ytimen agpgartia, ajureissa on oma NvAGP-toteutus. Jotkin järjestelmät toimivat paremmin ytimen agpgartilla, jotkin nVidian. Tämä kannattaa testata itse. Jollet osaa päättää, käytä ytimen agpgartia:

Koodilistaus 3.3: Agpgartin käyttö

Device Drivers --->
 Graphics Support --->
  <*> /dev/agpgart (AGP Support)

Huomaa: AMD64:llä IOMMU määrää agpgartin.

Arkkitehtuurikohtaiset

Tärkeää: X86- ja AMd64-suorittimille saatava ytimen ajuri ei toimi yhdessä nVidian binääriajurin kanssa. Näissä tapauksissa nVidia-tuet ytimestä pitää poistaa seuraavasti:

Koodilistaus 3.4: Ydin-ajurien poistaminen

Device Drivers --->
 Graphics Support --->
  <*> Support for frame buffer devices --->
   < >   nVidia Framebuffer Support
   < >   nVidia Riva support

Vaihtoehtona on uvesafb. Huomaa, että sen voi kääntää joko ytimeen tai moduuliksi. Seuraava esimerkki kääntää uvesafb:n ytimeen.

Koodilistaus 3.5: Uvesafb-tuen käyttö

Device Drivers --->
 Graphics Support --->
  <*> Support for frame buffer devices --->
   <*>   Userspace VESA VGA graphics support

Tai perus-VESA:

Koodilistaus 3.6: Enable VESA support

Device Drivers --->
 Graphics Support --->
  <*> Support for frame buffer devices --->
   [*]   VESA VGA graphics support

Lisätietoja löytää ohjeista hakemistossa /usr/src/linux/Documentation/fb/.

Ydinasetusten jatkaminen

Nvidia-drivers tunnistaa ytimen hakemistosta /usr/src/linux. Varmista, että se osoittaa oikeisiin lähteisiin ja ydinasetukset on tehty. Katso lisätietoja kappaleesta ydinasetusten teko asennuskäsikirjassa.

Aluksi asennetaan eselect, jollei sitä jo ole. Jos vaikkapa käytössä on gentoo-sources-2.6.34-r1, se näkyy seuraavasti:

Koodilistaus 3.7: /usr/src/linux-linkki

# eselect kernel list
Available kernel symlink targets:
  [1]   linux-2.6.18-gentoo-r4
  [2]   linux-2.6.20-gentoo-r7
  [3]   linux-2.6.34-gentoo-r1 *
(Varmista asteriskin paikka)

Ylläolevasta näkee, että asteriski osoittaa ytimeen linux-2.6.34-gentoo-r1.

Jos symlinkki on pielessä se pitää korjata valitsemalla oikea numero:

Koodilistaus 3.8: /usr/src/linuxin luonti tai korjaus

(Valitse oikea ydin)
# eselect kernel set 1

Sopivien ajurien asennus

Seuraavaksi asennetaan ajureita. Tämä onnistuu seuraamalla ohjetta X-palvelinen asetukset ja asettamalla VIDEO_CARDS="nvidia" tiedostossa /etc/portage/make.conf. X:n asennuksen pitäisi asentaa oikea ajuri automaattisesti.

Huomaa: Ajurit sisältävät gtk-USE-asetuksen. Tällä voi asentaa media-video/nvidia-settingsin, joka on kätevä asetus- ja valvontatyökalu.

Tärkeää: Joka kerta kun ydin päivitetään tai vanhaa uudelleenkäännetään pitää ajaa emerge nvidia-drivers nVidia-ajurien uudelleenasentamiseksi. Helpommin tämä onnistuu käyttämällä sys-kernel/module-rebuildia, joka luo listan käännettävistä ajureista komennolla module-rebuild populate. Tämän jälkeen pelkkä module-rebuild rebuild riittää uuden ytimen käännön yhteydessä.

Kun asennus on valmis, modprobe nvidia lataa ajurin muistiin. Jos kyseessä on päivitys, pitää vanha poistaa ensin.

Koodilistaus 3.9: Ydinmoduulin lataus muistiin

# lsmod | grep nvidia && rmmod nvidia
# modprobe nvidia

Jotta moduulia ei tarvitsisi joka käynnistyksessä ladata, kannattanee lisätä tiedostoon /etc/conf.d/modules rivi nvidia.

Tärkeää: Jos agpgart on moduuli, pitää se lisätä tiedostoon /etc/conf.d/modules.

X:n asetukset

Kun ajurit on asennettu, pitää säätää X:n asetuksiin nvidia ajuriksi oletusarvoisen nv:n sijaan.

Avaa /etc/X11/xorg.conf suosikkimuokkaimellasi (kuten nanolla tai vimillä) ja muokkaa Device-osion Driver-asetusta:

Koodilistaus 3.10: Ajurin asettaminen nvidiaksi xorg.confissa

Section "Device"
  Identifier "nVidia Inc. GeForce2"
  Driver     "nvidia"
  VideoRam   65536
EndSection

Seuraavaksi siirry Module-osioon ja varmista että glx ladataan mutta dri ei:

Koodilistaus 3.11: Module-osion päivittäminen

Section "Module"
  (...)
  # Load  "dri"
  Load  "glx"
  (...)
EndSection

Osiossa Screen varmista, että DefaultDepth on 16 tai 24, tahi että kaikissa Display-osioissa Depth on 16 tai 24. Muutoin nVidian GLX ei toimi.

Koodilistaus 3.12: Screen-osion päivittely

Section "Screen"
  (...)
  DefaultDepth 16
  Subsection "Display"
  (...)
EndSection

Suorita eselect, jotta X tajuaa käyttää oikeita kirjastoja:

Koodilistaus 3.13: Eselectin ajo

# eselect opengl set nvidia

Käyttäjien lisäys video-ryhmään

Käyttäjät pitää lisätä video-ryhmään, jotta heillä olisi pääsy nvidia-laitteisiin:

Koodilistaus 3.14: Käyttäjän lisäys video-ryhmään

# gpasswd -a käyttäjä video

Tämä ei ole täysin välttämätöntä jollei käytössä ole udev, mutteipä haittaakaan ja varmistaa tulevien päivitysten sujuvuuden.

Kortin testaus

NVidian testaukseen voi käynnistää X:n ja suorittaa glxinfo, joka löytyy paketista mesa-progs. Tulosteeksi pitäisi tulla suunnilleen:

Koodilistaus 3.15: Direct renderingin tarkastelu

$ glxinfo | grep direct
direct rendering: Yes

FPS:istä viitettä antaa glxgears.

NVidia-tuen käyttö

Jotkin ohjelmat, kuten mplayer ja xine-lib, käyttävä USE-asetusta xvmc, joka vaikuttaa XvMCNVIDIA-tukeen, jota tarvitaan korkearesoluutioisissa videoissa. Lisää xvmc /etc/portage/make.confin USEen tai pakettikohtaisesti media-video/mplayerille ja media-libs/xine-libille /etc/portage/package.use.

Jotkin ohjelmat saattavat myös tukea nvidia-USE-asetusta, joten sekin kannattanee lisätä tiedostoon /etc/portage/make.conf.

Seuraavaksi suoritetaan emerge -uD --newuse world, jotta ne ohjelmat, joihin uudet USE-asetukset vaikuttavat asentuvat uudestaan.

NVidia Settings Tool

NVidialla on myös nvidia-settings-työkalu asetusten tekoon. Sillä voi muuttaa grafiikka-asetuksia käynnistämättä X:ää uudestaan ja tarkastella laitteiden tilaa. Se löytyy Portage-puusta nimeltä media-video/nvidia-settings. Se myös asentuu ajurien mukana, jos USE-asetus gtk on asetettu tiedostoon /etc/portage/make.conf tai /etc/portage/package.use.

4.  Ongelmatilanteet

2D ei toimi, jos muistia on yli 4 gigaa

Jos nVidian 2D-tuki ei toimi, voi olla, että MTRR:n write-combining range -asetus ei toimi. Sen näkee tiedostosta /proc/mtrr:

Koodilistaus 4.1: Write-combining asetuksen katselu

# cat /proc/mtrr

Joka rivillä pitäisi olla write-back tai write-combining. Jos siellä on uncachable, pitää BIOS-asetuksia muuttaa.

Käynnistä kone uudelleen ja mene BIOSin asetuksiin. Sieltä MTRR löytynee suunnilleen CPU-asetusten suunnalta. Asetuksen pitää olla discrete eikä continuous, jotta 2D toimii ongelmitta.

Moduullin lataus tuottaa tekstin "no such device"

Yleensä virhe johtuu siitä, ettei näyttökorttia ole. Kannattaa siis varmistaa, että käytössä on nVidia-pohjainen laite (lspci auttaa).

Jos kyseessä on nVidia, BIOSista saattaa pitää muuttaa asetus Assign IRQ to VGA päälle.

5.  Erikoisasetukset

Ohjeita

NVidian ajureissa on ohjeet mukana. Ne löytyvät hakemistosta /usr/share/doc ja ne voi avata seuraavasti:

Koodilistaus 5.1: NVidian ohjeiden lukeminen

(nvidia-drivers)
$ less /usr/share/doc/nvidia-drivers-*/README.gz

Ydinmoduulin asetukset

Nvidia-moduulissa on joitain muokattavia asetuksia. Useimmat löytyvät ohjeista. Niitä lisätään tai poistetaan tiedostossa /etc/modprobe.d/nvidia.conf. Muista suorittaa update-modules tiedoston muokkaamisen jälkeen. Uudet aseutkset eivät vaikuta ennen kuin nvidia-moduuli on ladattu uudelleen.

Koodilistaus 5.2: NVidian asetusten muokkaus

(Avaa tiedosto editoriin)
# nano -w /etc/modprobe.d/nvidia.conf
(Päivitä moduulidata)
# update-modules
(Poista moduuli)
# modprobe -r nvidia
(Lataa moduuli taas)
# modprobe nvidia

X:n lisäasetuksia

GLX-rajapinnallakin on paljon erikoisasetuksia. Niillä muokataan TV outtia, kahden näytön asetuksia, virkistystaajuusasetuksia jne. Kaikki asetukset löytyvät ohjeista.

Asetukset kirjoitetaan Device-osioon X:n asetustiedostoa (yleensä /etc/X11/xorg.conf). Esimerkiksi jos poistetaan käynnistyskuva:

Koodilistaus 5.3: NVidian asetuksia X:n asetustiedostossa

Section "Device"
  Identifier "nVidia Inc. GeForce2"
  Driver     "nvidia"
  Option     "NoLogo" "true"
  VideoRam   65536
EndSection


Tulostettava muoto

Tämä sivu on viimeksi päivitetty 24. heinäkuuta 2012

Tätä käännöstä ei enää ylläpidetä

Tiivistelmä: Monilla Gentoon-käyttäjillä on nVidia-pohjaisia näyttökortteja. NVidialla on omat tehokkaat Linux-ajurinsa. Tässä ohjeessa kerrotaan niiden asentamisesta ja asetusten teosta.

Sven Vermeulen
Tekijä

Joshua Saddler
Tekijä

M Curtis Napier
Toimittaja

Chris Gianelloni
Toimittaja

Flammie Pirinen
Vastuullinen kääntäjä

Donate to support our development efforts.

Copyright 2001-2014 Gentoo Foundation, Inc. Questions, Comments? Contact us.