Xorg -configure

De la Wiki.lug.ro
Versiunea din 18 iulie 2012 05:47, autor: Bmbogdan (Discuție | contribuții) (A protejat "Xorg -configure" [edit=autoconfirmed:move=autoconfirmed])

(dif) ← Versiunea anterioară | Versiunea curentă (dif) | Versiunea următoare → (dif)
Salt la: navigare, căutare

Configurare simplă Xorg

X Window System, cunoscut şi ca X11 sau mai pe scurt X, este sistemul de ferestre folosit in Unix şi Linux. X este responsabil cu desenarea şi mişcarea ferestrelor pe ecran şi accesul la mouse şi tastatură.

X are două componente majore: serverul şi aplicaţii client (clienţi X). Serverul rulează pe maşina pe care se află display-ul, tastatura şi mouse-ul şi are ca responsabilităţi principale managementul acestora. Aplicaţiile client pot fi executate pe o maşină diferită şi discută cu serverul prin instrucţiuni de tipul "desenează o fereastră la aceste coordonate" la care serverul răspunde "utilizatorul tocmai a apăsat butonul OK". Modelul implementat asigură transparenţă în reţea, astfel server-ul şi aplicaţiile client pot fi localizate pe maşini diferite.

În cazul general al unui desktop, serverul şi aplicaţiile client rulează pe acelaşi calculator. În continuare ne vom referi strict la acest caz de configurare. Presupunem că aţi instalat ultima versiune de X distribuită de Fundaţia X.Org la http://wiki.x.org/wiki/ (pachetul apare în general sub numele de xorg-x11 sub diferite distribuţii Linux).


Începeţi configurarea ca superuser rulând comanda:

# cd ~
# Xorg -configure

Această comandă încearcă să detecteze automat hardware-ul disponibil şi va crea un fişier xorg.conf.new în directorul /root.


Următorul pas este de a încerca configuraţia nou creată:

# Xorg -config xorg.conf.new

Dacă un ecran negru şi gri cu un cursor de mouse apare, configurarea a reuşit. Pentru a ieşi din acest ecran apăsaţi simultan Ctrl+Alt+Backspace.


Apoi deschidem pentru editare fişierul xorg.conf.new. Aruncăm o privire la secţiunile "Monitor" şi "Device" şi le modificăm dacă dorim. Mai jos o serie de valori generice cunoscute că ar funcţiona pe o serie largă de sisteme desktop:

# Generic Monitor
Section "Monitor"
	Identifier	"Generic Monitor"
	VendorName	"Generic"
	ModelName	 "Monitor"
	HorizSync	 30-70
	VertRefresh    50-160
EndSection
#
# Standard VESA Device:
Section "Device"
   Identifier	"VESA"
   VendorName	"Unknown"
   BoardName	"Unknown"
#    Chipset	"generic"
   Driver     "vesa"
#    BusID      "PCI:0:10:0"
#    VideoRam	256
#    Clocks	25.2 28.3
EndSection


O serie întreagă de drivere sunt disponibile. La mine în sistem (Gentoo) acestea se găsesc în /usr/X11R6/lib/modules/drivers:

# ls /usr/X11R6/lib/modules/drivers
apm_drv.so        fbdev_drv.so     r128_drv.so           tga_drv.so
ark_drv.so        glint_drv.so     radeon_drv.so         trident_drv.so
ati_drv.so        i128_drv.so      rendition_drv.so      tseng_drv.so
atimisc_drv.so    i740_drv.so      riva128.so            vesa_drv.so
chips_drv.so      i810_drv.so      s3_drv.so             vga_drv.so
cirrus_alpine.so  linux            s3virge_drv.so        via_drv.so
cirrus_drv.so     mga_drv.so       savage_drv.so         vmware_drv.so
cirrus_laguna.so  neomagic_drv.so  siliconmotion_drv.so
cyrix_drv.so      nsc_drv.so       sis_drv.so
dummy_drv.so      nv_drv.so        tdfx_drv.so

Acestea pot înlocui valoarea pentru "Driver" mai sus, de exemplu 'nv' pentru NVidia, sau 'r128' pentru ATI Rage 128. Un driver foarte interesant este fbdev - framebuffer. Pentru a-l folosi avem nevoie să activăm facilitatea framebuffer în kernel-ul Linux. Setarea fbdev este foarte populară cu LiveCD-urile de gen Knoppix, deoarece aceasta funcţionează pe un număr mare de desktop-uri (de obicei se încearcă o boot-are de kernel cu framebuffer, iar dacă aceasta nu reuşeşte driver-ul de xorg este înlocuit cu vesa). Despre setarea boot-ării de framebuffer puteţi consulta acest document: http://www.gentoo.ro/doc/ro/handbook/handbook-x86.xml?part=1&chap=10


Trebuie apoi să specificăm parametrii ecranului în xorg.conf.new:

Section "Screen"
   Identifier  "Screen 1"
   Device      "VESA"
   Monitor     "Generic Monitor"
   DefaultDepth 16
#
   Subsection "Display"
       Depth       8
       Modes       "1280x1024" "1024x768" "800x600" "640x480"
       ViewPort    0 0
   EndSubsection
   Subsection "Display"
       Depth       16
       Modes       "1280x1024" "1024x768" "800x600" "640x480"
       ViewPort    0 0
   EndSubsection
   Subsection "Display"
       Depth       24
       Modes       "1280x1024" "1024x768" "800x600" "640x480"
       ViewPort    0 0
   EndSubsection
EndSection

Observaţi corespondenţa dintre "VESA" şi "Generic Monitor" între cele trei secţiuni ("Section") prezentate. Puteţi schimba valorile "DefaultDepth" şi "Modes" după cum doriţi.

Ultima etapă de configurare constă in copierea xorg.conf.new în sistem, astfel încât poate fi folosit de toţi utilizatorii:

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

iar apoi porniţi xorg prin

# startx

Mouse

Problemele legate de configurarea mouse-ului provin din faptul ca dispozitivul propriu-zis apare sub diferite nume pe fiecare distribuţie Linux în parte. Cele mai populare par a fi /dev/psaux, /dev/input/mice şi /dev/input/mouse0. Orice mouse aţi avea puteţi încerca dacă aceste device funcţionează folosind următoarea comandă:

# cat /dev/psaux

Mişcaţi mouse-ul, şi dacă obţineţi pe ecran nişte caractere ciudate, dispozitivul funcţionează corect. Apăsaţi Ctrl-C pentru a termina.

Secţiunea de mouse în xorg.conf poate arăta în felul următor:

Section "InputDevice"
	Identifier  "Mouse0"
	Driver      "mouse"
	Option	    "Protocol" "auto"
	Option	    "Device" "/dev/psaux"
	Option	    "Protocol" "IMPS/2"
	Option      "ButtonNumber" "5"
	Option      "ZAxisMapping" "4 5"
EndSection

Opţiunile ButtonNumber şi ZAxisMapping setează butonul/rotiţa din mijloc.


Altă documentaţie xorg în limba română

http://www.gentoo.org/doc/ro/xorg-config.xml - Ghidul Gentoo de configurare xorg

http://www.slackware.com.ro/carte/x-window-system.html - Slackware book

În engleză, pe cale de a fi tradus http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/x-config.html - FreeBSD Handbook