Gentoo Logo

KUINKA X-palvelin säädetään kuntoon

Sisällysluettelo:

1.  Mikä on X-ikkunointipalvelin?

Graafinen vs. komentorivi

Keskivertokäyttäjiä saattaa pelottaa ajatus, että tietokonetta käytetään kirjoittamalla merkkipohjaisia komentoja. Mikseipä olisikaan kätevämpää sohia hiirellä ja kliksutella tiensä läpi Gentoo-järjestelmän? Tokihan tämä onkin mahdollista, Linuxeissa on itse asiassa laajakin valikoima välkkyviä ja värikkäitä käyttöliittymiä joita voi käyttää missä tahansa yhteydessä.

Graafinen käyttöliittymä ei kuitenkaan ole muuta kuin yksi sovellus, jota ajetaan järjestelmässä. Se ei kuulu Linuxin ytimeen millään tavalla, eikä muuhunkaan järjestelmän sisäiseen osaan. Se on vain työkalu, jolla saa käyttöön graafisen liitynnän työasemaansa.

X-ikkunointijärjestelmä on eräs standardi, joka määrittelee grafiikan piirtämisen ja ikkunoiden liikuttelun ruuduilla ja syötelaitteiden kuten hiirten ja näppisten käsittelyn sekä muitakin. X-ikkunointijärjestelmästä käytetään usein lyhennettä X11 tai vain X. X:iä voidaan käyttää kaikissa Unix-tyylisissä käyttöjärjestelmissä.

Linux-käyttäjien suosima sovellus, joka tarjoaa graafisen käyttöliittymän X11-standardin mukaisesti, on Xorg-X11. Xorg on XFree86-projektista forkattu ikkunointijärjestelmä. Kun XFree86 käytti lisenssiä, joka saattaa olla yhteensopimaton GPL:n kanssa, on ruvettu suosittelemaan Xorgin käyttöä sen sijaan; XFree86-paketteja ei enää ole Portagepuussa.

X.org-projekti

X.org-projekti ylläpitää vapaasti levitettävää open source -toteutusta X11-järjestelmästä.

Xorg on rajapinta laitteiston ja graafisen ohjelmiston välillä. Sen lisäksi Xorgissa on verkkotuki, jonka avulla ohjelmia voi ajaa toisessa koneessa kuin niitä käyttää.

2.  Xorgin asennus

Emergaamalla

Xorg asennetaan yllättävästi komennolla emerge xorg-x11. Asennuksessa kestää jokunen tovi.

Ennen Xorgin asentamista kannattaa asettaa kaksi muuttujaa tiedostossa /etc/make.conf.

Ensimmäinen on VIDEO_CARDS, jolla kerrotaan mitkä näyttöajurit ovat käytössä. Yleisimmät asetukset ovat nvidia nVidian laitteille tai fglrx ATin Radeoneille. Nämä ovat nVidian ja ATin suljetut ajuriversiot. Avoimet, vapaat vaihtoehdot ovat nv, jossa ei ole ollenkaan 3D-kiihdytystä. Vapaa radeon-ajuri sisältää jopa 3D-tuen vanhemmille radeoneille. VIDEO_CARDS-asetukseen voi panna niin monta ajuria kuin haluaa, ja ne erotellaan välilyönnein.

Toinen asetus on INPUT_DEVICES, joka kertoo mitkä syöttölaiteajurit ovat käytössä. Yleensä asetus keyboard mouse riittää hyvin.

Lisää tarvittavat ajurit tiedostoon /etc/make.conf:

Koodilistaus 2.1: Ajurien lisäys make.confiin

(Hiirelle ja näppäimistölle)
INPUT_DEVICES="keyboard mouse"
(nVidian näyttölaitteille)
VIDEO_CARDS="nvidia"
(ATin Radeoneille)
VIDEO_CARDS="fglrx"

Tarkemmat ohjeet nVidian ja ATin laitteiden käytöstä löytyvät nVidia-oppaasta ja Gentoo Linux ATI FAQ:sta. Jos et tiedä mikä ajuri kannattaa valita, lue nämä oppaat lisätietoa varten.

Huomaa: Jos asetukset eivät toimi, suorita emerge -pv xorg-server, tarkista asetukset ja valitse sellaiset mitkä sopivat järjestelmääsi. Esimerkki on yhdistelmälle amd64 ja xorg-server-1.2.

Koodilistaus 2.2: Ajurivaihtoehtojen tarkastelu

# emerge -pv xorg-server

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R   ] x11-base/xorg-server-1.2.0-r3  USE="dri nptl xorg (-3dfx) -debug
-dmx -ipv6 -kdrive -minimal -sdl -xprint" INPUT_DEVICES="keyboard mouse -acecad
-aiptek -calcomp -citron -digitaledge -dmc -dynapro -elo2300 -elographics -evdev
-fpit -hyperpen -jamstudio -joystick -magellan -microtouch -mutouch -palmax
-penmount -spaceorb -summa -synaptics -tek4957 -ur98 -vmmouse -void -wacom"
VIDEO_CARDS="nvidia -apm -ark -chips -cirrus -cyrix -dummy -epson -fbdev -fglrx
-glint -i128 (-i740) -i810 (-impact) (-imstt) -mach64 -mga -neomagic (-newport)
(-nsc) -nv -r128 -radeon -rendition -s3 -s3virge -savage -siliconmotion -sis
-sisusb (-sunbw2) (-suncg14) (-suncg3) (-suncg6) (-sunffb) (-sunleo) (-suntcx)
-tdfx -tga -trident -tseng -v4l -vesa -vga -via -vmware -voodoo" 0 kB

Muuttujan asettamisen jälkeen Xorgin voi asentaa.

Koodilistaus 2.3: Xorgin asennus

# emerge xorg-x11

Kun asennus on valmis, ympäristömuuttujat saattaa pitää päivittää ennen jatkamista. Ympäristön päivitys tapahtuu tavalliseen tapaan komennoilla env-update ja source /etc/profile.

Koodilistaus 2.4: Ympäristömuuttujien päivitys

# env-update
# source /etc/profile

3.  Xorgin säädöt

Tiedosto xorg.conf

Xorgin asetustiedosto on xorg.conf hakemistossa /etc/X11. Paketissa Xorg-x11 on oletusasetusto mukana tiedostossa /etc/X11/xorg.conf.example. Sitä voi käyttää pohjana omien asetusten säätämisessä. Se on selkeästi kommentoitu, mutta jos tarvitset lisäohjeita, niin niitähän löytyy ohjesivuilta:

Koodilistaus 3.1: Xorg.confin ohjesivut

# man 5 xorg.conf

Mielenkiintoista luettavaa joka tapauksessa. Tässä emme kuitenkaan tarkastele sitä, vaan katsomme ensin asetustiedoston automatisoitua luontia.

Oletus: xorg.confin automaattinen luonti

Xorg osaa itsekin arvata valtaosan asetuksista puolestasi. Useimmiten tarvitsee vain muuttaa muutamia rivejä, että saa haluamansa resoluution käyttöön. Tarkempiakin säätöjä voi tehdä, mutta niistä lisää kappaleen lopussa. Mutta ensin luodaan Xorgin asetustiedosto.

Koodilistaus 3.2: Xorg.confin luonti

# Xorg -configure

Lue huolella myös Xorgin ruudulle tulostamat ohjeet, jos niissä kerrotaan virheistä, pitää xorg.confia muokata käsin. Jollei virheitä tapahtunut, ohjelma kertoo kirjoittaneensa uudet asetukset tiedostoon /root/xorg.conf.new, ja näitä voi nyt testata:

Koodilistaus 3.3: Xorg.conf.new'n testaus

# X -config /root/xorg.conf.new

Jos kaikki toimii, ruudulle ilmestyy mustavalkoinen punoskuvio. Varmista että hiiri toimii odotuksen mukaisesti ja resoluutio näyttää hyvältä. Jos hiiri kertoo virheitä tiedostossa /dev/mouse, kannattaa kokeilla asetusta /dev/input/mice. Poistuminen onnistuu painamalla Ctrl-Alt-Backspace.

Vaihtoehto: Xorg.confin vuorovaikutteinen luonti

Xorgin mukana tulee työkaluohjelma xorgconfig, joka kyselee tietoja koneestasi, ja sen pohjalta vääntää sopivan xorg.conf-tiedoston.

Koodilistaus 3.4: Xorg.confin vuorovaikutteinen luonti

# xorgconfig

Xorgin mukana tulee myös työkalu xorgcfg, joka käyttää Xorg -configurea asetusten tekoon, ja käynnistää sitten X:n lopullista asetusten säätöä varten.

Koodilistaus 3.5: Xorgcfg:n käyttö

# xorgcfg
(Jollei X tunnu toimivan, koeta:)
# xorgcfg -textmode

Xorg.confin kopiointi

Kun xorg.conf.new kopioidaan /etc/X11/xorg.conf;ksi, se luetaan automaattisesti X:n käynnistyessä, eikä tarvita enää -config-valitsinta. Nyt käynnistyksen voi suorittaa komennolla X tai startx.

Koodilistaus 3.6: Xorg.confin kopiointi

# cp /root/xorg.conf.new /etc/X11/xorg.conf

Startx:n käyttö

Käynnistetään nyt palvelin startx:llä. Startx on skripti, joka käynnistää X session, eli ajaa X-palvelimen ja käynnistää siihen joitain graafisia sovelluksia. Sovellukset se päättää seuraavan kaavan mukaan:

  • Jos kotihakemistossa on .xinitrc, suoritetaan sen sisältö.
  • Muutoin suoritetaan ympäristömuuttujan XSESSION nimeämä sessio, joka löytyy hakemistosta /etc/X11/Sessions/. XSESSIONin voi muuttaa tiedostosta /etc/rc.conf.
  • Jos kumpikaan ei onnistu, käynnistestään jokin varmasti saatavilla oleva ikkunointijärjestelmä, kuten twm.

Koodilistaus 3.7: X:n käynnistys

# startx

Jos nyt käynnistyy hankala, ruma ja sekava ikkunointijärjestelmä, se on todennäköisesti twm . TWM:n saa suljettua kirjoittamalla exit tai painamalla Ctrl-D jossain terminaali-ikkunassa. X:n voi tappaa myös näppäilyllä Ctrl-Alt-Backspace, tällöin X kuitenkin sammuu suoraan ja varmistuksetta, mikä ei aina ole odotettua.

4.  Xorg.confin säätäminen

Resoluutioasetukset

Jos resoluutio näyttää väärältä, asetustiedostossa on kaksi kohtaa tarkistettavaksi. Ensinnä Screen-osiossa on luettelo resoluutioista, joita X-palvelin käyttää. Oletuksena tämä osio voi olla myös tyhjä, ja silloin Xorg arpoo resoluutiot osiosta Monitor.

Käytännössä Xorg tarkistaa Monitor-osion HorizSync ja VertRefresh saadakseen toimivat resoluutiot. Nämä asetukset on hyvä aluksi jättää sellaisikseen, ja vasta jos Screen-osion muutokset eivät toimi kannattaa näitä muokata. Näiden arvot pitää katsoa monitorin ohjekirjasta, apuna voi käyttää myös työkalua joka hakee monitorin arvot, kuten sys-apps/ddcxinfo-knoppix.

Varoitus: Älä muuttele monitoriasetuksia ilman monitorin ohjekirjan tarkkoja tietoja, väärät arvot johtavat parhaimmillaan taajuusvirheilmoituksiin ja pahimmillaan hajonneisiin näyttöihin.

Muokataan aluksi resoluutioarvoja. Seuraavassa esimerkissä lisätään /etc/X11/xorg.confiin Modes-asetukset ja DefaultDepth, jotta X käynnistyisi 1024×768-resoluutiossa 24-bittisellä värisyvyydellä. Esimerkkejä voi ja kannattaa muuttaa mieltymysten mukaisiksi.

Koodilistaus 4.1: /etc/x11/xorg.confin säätäminen

Section "Screen"
  Identifier  "Default Screen"
  Device    "S3 Inc. ProSavage KN133 [Twister K]"
  Monitor   "Generic Monitor"
  DefaultDepth  24
  # Ohitettu joitain rivejä
  SubSection "Display"
    Depth   24
    Modes   "1024x768"
  EndSubSection
EndSection

Käynnistä X testataksesi että resoluutio on oikea ja toimii.

Näppäimistön asetukset

X:n voi asettaa käyttämään vaikkapa suomalaista näppäimistöä sopivasta InputDevice-osiosta. Asetus XkbLayout määrittelee halutun näppäinasettelun. Esimerkiksi näin asetetaan suomalainen näppäimistö:

Koodilistaus 4.2: Näppäimistöasettelun muuttaminen

Section "InputDevice"
  Identifier  "Generic Keyboard"
  Driver    "keyboard"
  Option    "CoreKeyboard"
  Option    "XkbRules"  "xorg"
  Option    "XkbModel"  "pc105"
  Option    "XkbLayout" "fi"
EndSection

Hiiren säätäminen

Jollei hiiri toimi, kannattaa ensiksi testata tunnistaako kerneli sitä ollenkaan. Hiirten laitetiedostot ovat /dev/input/mouse0 (tai /dev/input/mice useille hiirille). Joissain tapauksissa myös /dev/psaux voi olla oikein. Joka tapauksessa hiiren toimivuutta voi testata katsomalla tiedostojen sisältöä kun hiirtä käytetään. Tulosteessa pitäisi näkyä satunnaisehkoa roskaa hiirtä liikutellessa. Katselu lopetetaan painamalla Ctrl-C:tä.

Koodilistaus 4.3: Laitetiedostojen tarkastelu

# cat /dev/input/mouse0
(Muista Ctrl-C lopuksi)

Jollei hiirtä tunnisteta, tarkista että kaikki tarpeelliset moduulit on ladattu.

Jos hiiri toimii, sen saa käyttöön täyttämällä sopivan InputDevice-osion. Esimerkissä asetetaan myös kaksi muuta asetusta: Protocol (joka kertoo hiiren käyttämän tietokäytännön, yleensä IMPS/2 tai vastaavat) ja ZAxisMapping (joka kertoo rullien toiminnan, jos niitä on).

Koodilistaus 4.4: Xorgin hiiriasetusten korjaus

Section "InputDevice"
  Identifier  "TouchPad Mouse"
  Driver    "mouse"
  Option    "CorePointer"
  Option    "Device"    "/dev/input/mouse0"
  Option    "Protocol"    "IMPS/2"
  Option    "ZAxisMapping"    "4 5"
EndSection

Komennolla startx voi taas varmistua lopputuloksesta. Nyt kasassa pitäisi olla toimiva X-ympäristö. Seuraava askel olisi asentaa työpöytäympäristö ja päästä eroon twm:stä, mutta se ei kuulu enää tähän oppaaseen.

5.  Lisätietoa

Xorg.confin säätö

Ohjesivulla man 5 xorg.conf on tiivis, mutta täysi luettelo asetustiedoston sisältömahdollisuuksista. Se kannattaa pitää esillä asetustiedostoa muokattaessa.

Lisäksi dokumentaatiota löytyy hakemiston /usr/X11R6/lib/X11/doc alta erinäisistä README-tiedostoista eri grafiikkakorteille.

Netissä on myös paljon tietoa asetuksista, alla on muutama lueteltuna, mutta Googlaamalla löytyy lisää. xorg.conf ja XF86Config (XFree86-palvelimen asetustiedosto) ovat käytännössä samoja, joten luettelossa on myös siihen liittyviä tietoja.

Muut lähteet

Jos päivität vanhasta monoliitti-Xorgista uudempaan modulaariseen, lue Migrating to Modular X HOWTO.

Muita ohjeita löytyy Työpöytäopaskokoelmasta.



Tulostettava muoto

Viimeksi päivitetty 20. kesäkuuta 2007

Tiivistelmä: Xorg on graafinen käyttöympäristö joka toimii X-ikkunointipalvelinperiaatteella. Tämä KUINKA-dokumentti selvittää mikä Xorg on, kuinka se asennetaan ja mitä säätömahdollisuuksia siihen liittyy.

Sven Vermeulen
Tekijä

Flammie Pirinen
Vastuullinen kääntäjä

Donate to support our development efforts.

Support OSL

Support OSL

Gentoo Centric Hosting: vr.org

VR Hosted

Tek Alchemy

Tek Alchemy

SevenL.net

SevenL.net

Global Netoptex Inc.

Global Netoptex Inc.

Bytemark

Bytemark

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