Salta il menu
*Guida ad ArchBang - Xorg

< Home >

Xorg

Questa pagina è stata creata sulla base delle indicazioni del Wiki di Arch Linux Italia

Xorg è un'applicazione pubblica e open-source del sistema X-window versione 11. Dal momento che Xorg è la scelta più popolare tra gli utenti Linux, la sua ubiquità ha portato a renderlo un requisito sempre presente per le applicazioni GUI, con conseguente adozione massiccia dalla maggior parte delle distribuzioni. Consultare l'articolo di Wikipedia Xorg o visitare Xorg website per ulteriori informazioni.

1. Configurazione

I file di configurazione si trovano in /etc/X11/xorg.conf.d/.
Si dovrebbe avere 10-evdev.conf che gestisce la tastiera, il mouse, il touchpad e il touchscreen. Si è liberi di creare nuovi file di configurazione, che devono però iniziare da XX- e terminare con .conf (per esempio 10 prima di 20).

1.1 Touchpad//Synaptics
Se si ha un laptop, si potrebbe anche voler installare il driver Synaptic.

pacman -S xf86-input-synaptics

Dopo l'installazione, si troverà 10-synaptics.conf nella cartella /etc/X11/xorg.conf.d. Si potrà quindi commentare, o eliminare, la "InputClass" del touchpad in 10-evdev.conf.

1.2 Schede Grafiche e Driver

Il driver (xf86-video-vesa) non è un driver ottimale (non attiva l'accellerazione 3D e non supporta alcune risoluzioni), potrebbe essere necessario installare il driver adatto alla scheda video.
Per conoscere il nome della scheda installata sul proprio sistema.

lspci | grep "VGA"

Si può avere una lista di tutti i driver con il comando:

pacman -Ss xf86-video

Driver comuni (open source):
  • nvidia: xf86-video-nouveau (vedere Nouveau)
  • intel: xf86-video-intel (vedere Intel)
  • ati: xf86-video-ati (vedere ATI)
1.2.3 Driver proprietari

Xorg dovrebbe funzionare senza problemi senza i driver "closed source", che in genere sono necessari solo per funzioni avanzate come il fast rendering con accelerazione 3D per i giochi, configurazioni dual-screen e TV-out. Consultare NVIDIA e ATI.

1.2.3.1 Nvidia

Gli utenti di schede video Nvidia hanno la possibilità di poter scegliere tra tre diversi driver video (escludendo i driver vesa):
  • I driver open source 'nouveau', che offrono buon prestazioni, un'ottima accelerazione 2D ed uno sperimentale al 3D che includono un supporto per il composite di base (il risparmio energetico non è ancora supportato). Feature Matrix.
  • I driver open source 'nv', oramai non più sviluppato, che offre scarse prestazioni ed il solo supporto al 2D.
  • I driver proprietari 'nvidia', che offrono buone prestazioni 3D ed hanno il supporto al risparmio energetico. Vedere la pagina Nvidia per maggiori informazioni. Anche se si pensa di utilizzare i driver proprietari, si consiglia di iniziare con i driver nouveau e poi passare al driver binario, perché nouveau sarà quasi sempre in grado di funzionare, mentre nvidia richiede più configurazione e probabilmente qualche risoluzione di problemi.
I driver open-source nouveau dovrebbero essere sufficienti per la maggior parte degli utenti ed essere la scelta consigliata, per installarli:

pacman -S xf86-video-nouveau

Per un supporto 3D sperimentale:

pacman -S nouveau-dri

Creare il file /etc/X11/xorg.conf.d/20-nouveau.conf, ed al suo interno aggiungere quanto segue:

Section "Device"
Identifier "n"
Driver "nouveau"
EndSection

Ciò è necessario per assicurare che il driver nouveau venga caricato. Xorg non è ancora in grado di caricarlo automaticamente.

Per maggiori istruzioni consultare la pagina Nouveau.

Installazione driver nvidia

È consigliato l'utilizzo di pacman per l'installazione dei driver NVIDIA rispetto al pacchetto fornito dal sito NVIDIA, questo permette che i driver vengano aggiornati assieme al resto del sistema

Installazione dei driver per schede video recenti (Tutte le schede superiori alle serie GF FX):

pacman -S nvidia nvidia-utils

Mentre per schede video datate (Schede della serie Geforce FX) si installi:

pacman -S nvidia-96xx nvidia-96xx-utils

oppure (per schede superiori alla serie GF 4):

pacman -S nvidia-173xx nvidia-173xx-utils

Per gli ultimi modelli di schede video potrebbe essere richiesta l'installazione di nvidia-beta e nvidia-utils-beta dal repository AUR dato che i driver stabili potrebbero non supportare le più recenti caratteristiche.

Sui sistemi a 64 bit, per poter utilizzare appieno i programmi a 32-bit è necessaria l'installazione del pacchetto nvidia-utils che utilizzi le lib32, oltre ai varie dipendenze che poggino sulle lib32 (per esempio potreste dover installare il pacchetto lib32-nvidia-utils).
È generalmente consigliato riavviare il sistema dopo un aggiornamento del kernel e dei driver grafici.

Una volta terminata l'installazione, si prosegua a: #Configurazione Configurazione

E' possibile che dopo l'installazione dei driver non sia necessario creare un file di configurazione per il server Xorg, si può verificare il corretto funzionamento del server Xorg senza un file di configurazione. Tuttavia può essere necessario creare un file di configurazione /etc/X11/xorg.conf in modo da poter modificare varie impostazioni. Questa configurazione può essere generata dal tool di configurazione Xorg NVIDIA, o può essere creato manualmente. Se creato manualmente possiamo creare una configurazione minimale (nel senso che verranno passate solo le opzioni base al server Xorg), o può includere una serie di impostazioni che possono bypassare le opzioni preconfigurate o di autoricerca di Xorg.

Il pacchetto NVIDIA include un tool di configurazione automatica per creare un file di configurazione(xorg.conf) per il server Xorg e può essere eseguito con:

nvidia-xconfig

Questo comando ricercherà automaticamente e creerà (o modificherà se già presente) la configurazione di /etc/X11/xorg.conf, a seconda dell'hardware installato.
Se risulta presente l'istanza di DRI, assicurarsi che sia commentata:

Load "dri"

Controllare che il file /etc/X11/xorg.conf appena creato contenga come valori predefiniti di depth, horizontal sync, vertical refresh, e risoluzione monitor accettabili per il vostro hardware.

Questa procedura potrebbe non funzionare correttamente con Xorg-server 1.8

1.2.3.2 ATI

I possessori di schede grafiche ATI possono scegliere tra due tipi di driver (escludendo i driver vesa):
  • I driver open source radeon>, forniti dal pacchetto xf86-video-ati>. Consultate Feature Matrix per maggiori dettagli.
  • I driver proprietari fglrx, forniti dal pacchetto Catalyst disponibili su AUR. Essi supportano solo le schede più recenti (ossia, dalle HD2xxx in su).
I driver open-source sono la scelta consigliata. Installare i driver ATI radeon con il comando:

pacman -S xf86-video-ati

Istruzioni più dettagliate sono reperibili qui.

2. Impostazioni del monitor

2.1 Come iniziare

Questo passo è OPZIONALE e non dovrebbe essere fatto se non si sa cosa si sta facendo. È invece OBBLIGATORIO se si usano due monitor o i driver nouveau. Consultare Nouveau#Configuration.

Per prima cosa, creare un nuovo file di configurazione, /etc/X11/xorg.conf.d/10-monitor.conf per esempio.

nano /etc/X11/xorg.conf.d/10-monitor.conf

Fare un "Copia e Incolla" con il seguente codice

Section "Monitor"
Identifier "Monitor0"
EndSection

Section "Device"
Identifier "Device0"
Driver "vesa" #Choose the driver used for this monitor
EndSection

Section "Screen"
Identifier "Screen0" #Collapse Monitor and Device section to Screen section
Device "Device0"
Monitor "Monitor0"
DefaultDepth 16 #Choose the depth (16||24)
SubSection "Display"
Depth 16
Modes "1024x768_75.00" #Choose the resolution
EndSubSection
EndSection

2.2 Dimensione dello schermo e DPI
Il DPI> dell'X server è determinato nel modo seguente:
  1. L'opzione riga di comando dpi ha la massima priorità.
  2. Se questa non viene utilizzata, l'impostazione della dimensione dello schermo nel file di configurazione di X, è utilizzata per determinare il DPI, data la risoluzione dello schermo.
  3. Se non viene fornita la dimensione schermo, i valori di dimensione del monitor DDC vengono utilizzati per ricavare la DPI, data la risoluzione dello schermo.
  4. Se il DDC non specifica una dimensione, il valore DPI 75 viene utilizzato di default.

Per ottenere una corretta impostazione dei "punti per pollice" (DPI), la dimensione del display deve essere conosciuta oppure impostata.
Impostare correttamente il DPI è necessario soprattutto quando è richiesta una risoluzione fine (come per il rendering dei font). In precedenza i produttori cercavano di creare uno standard per 96 DPI (un monitor 10.3 " in diagonale sarebbe 800x600, un monitor 13,2" 1024x768). I monitor attuali possono essere di un qualsiasi numero di DPI e questo non può corrispondere orizzontalmente e verticalmente. Per essere in grado di impostare il DPI, il server Xorg tenta di rilevare automaticamente la dimensione fisica dello schermo del monitor tramite la scheda grafica con DDC. Quando il server Xorg sarà a conoscenza della dimensione fisica dello schermo, sarà anche in grado di impostare il corretto DPI a seconda delle dimensioni di risoluzione.
Per verificare se le dimensioni del display e DPI sono rilevati e calcolati correttamente:

xdpyinfo | grep dimensions
xdpyinfo | grep "dots per inch"

Verificare che le dimensioni corrispondano alla dimensione di visualizzazione. Se il server Xorg non è in grado di calcolare correttamente le dimensioni dello schermo, il valore verrà predefinito a 75x75 DPI e si dovrà calcolarlo ed impostarlo manualmente.
Se si dispone di indicazioni sulla dimensione fisica dello schermo, possono essere inserite nel file di configurazione di Xorg, in modo che il DPI corretto venga calcolato come segue:

Section "Monitor"
Identifier "Monitor0"
DisplaySize 286 179 # In millimeters
EndSection

Se non si dispone di specifiche per la larghezza e l'altezza dello schermo orizzontale e fisico (attualmente la maggior parte delle specifiche sono elencate solo per dimensione diagonale), è possibile utilizzare la risoluzione nativa del monitor (o rapporto di aspetto) e di lunghezza diagonale per calcolare le dimensioni fisiche orizzontali e verticali. Utilizzando il teorema di Pitagora in uno schermo con diagonale 13,3", con risoluzione nativa 1280x800 (o aspect ratio 16:10):

echo 'scale=5;sqrt(1280^2+800^2)' | bc # 1509.43698

Questo darà la lunghezza della diagonale in pixel e con questo valore si possono ottenere le lunghezze fisiche orizzontali e verticali (e convertirle in millimetri):

echo 'scale=5;(13.3/1509)*1280*25.4' | bc # 286.43072
echo 'scale=5;(13.3/1509)*800*25.4' | bc # 179.01920

Questo calcolo funziona per le dimensioni di più tipi di monitor, tuttavia vi sono monitor più economici che di rado possono comprimere il rapporto di aspetto (per esempio la risoluzione 16:10 a 16:9) in tal caso si dovrebbe misurare la dimensione dello schermo manualmente.

Il DPI può essere impostato anche se si prevede di utilizzare solo una risoluzione:

Section "Monitor"
Identifier "Monitor0"
Option "DPI" "96 x 96"
EndSection

Se per qualche strano motivo i driver nvidia non impostano il DPI corretto, è possibile disattivare il rilevamento automatico:

Option "UseEdidDpi" "false"

Per i driver RandR compatibili, è possibile impostare con:

xrandr --dpi 96

Consultare Execute commands after X start per rendere salvare i cambiamenti.

3. Impostazioni della tastiera

Xorg potrebbe fallire nel riconoscere correttamente la tastiera. Ciò potrebbe dare problemi con il layout della tastiera o con il modello, non essendo impostata correttamente.
Per trovare una lista completa di modelli di tastiera, layout, varianti e opzioni, si apra /usr/share/X11/xkb/rules/xorg.lst per impostare la mappatura della tastiera per la sessione corrente di Xorg:

setxkbmap dvorak

3.1 Ritardo di ripetizione e frequenza dei tasti

Usare xset r rate DELAY RATE per modificarli, e xinitrc per salvare i cambiamenti.

3.2 Visualizzazione delle impostazioni della tastiera
setxkbmap -print -verbose 10

Setting verbose level to 10
locale is C
Applied rules from evdev:
model: evdev
layout: us
options: terminate:ctrl_alt_bksp
Trying to build keymap using the following components:
keycodes: evdev+aliases(qwerty)
types: complete
compat: complete
symbols: pc+us+inet(evdev)+terminate(ctrl_alt_bksp)
geometry: pc(pc104)
xkb_keymap {
xkb_keycodes { include "evdev+aliases(qwerty)" };
xkb_types { include "complete" };
xkb_compat { include "complete" };
xkb_symbols { include "pc+us+inet(evdev)+terminate(ctrl_alt_bksp)" };
xkb_geometry { include "pc(pc104)" };
};

3.3 Impostare la mappatura della tastiera con Hot-Plugging
Per rendere le modifiche permanenti, si aggiunga a xorg.conf:

Section "InputClass"
Identifier "Keyboard Defaults"
MatchIsKeyboard "yes"
Option "XkbLayout" "dvorak"
EndSection

Si noti che questo è in una sezione InputClass e non la sezione InputDevice per la tastiera.
3.4 Cambio tra diversi layout della tastiera
Per facilitare il cambiamento dei layout della tastiera, modificare le Options usate in entrambi i metodi descritti sopra. Per esempio tra un layout americano e uno svedese si usi (con il tasto Blocco Maiuscole):

Option "XkbLayout" "us, se"
Option "XkbOptions" "grp:caps_toggle"

Ciò è particolarmente utile se non si sta usando un DE che si occupa dei layout della tastiera.

4. Risoluzione dei problemi

4.1 Problemi comuni
Se Xorg non dovesse avviarsi, o lo schermo fosse completamente nero, non funzionassero tastiera e mouse, ecc., innanzitutto si effettuino questi semplici passaggi:
  • Controllare il file di log: cat /var/log/Xorg.0.log
  • Installare i driver di input (tastiera, mouse, joystick, tablet, ecc...):
  • Alla fine, cercare i problemi più comuni negli articoli riguardanti ATI, Intel e NVIDIA.
4.2 Problemi con la modalità Frame-buffer
Se il server X fallisce all'avvio e controllando il corrispettivo file log (/var/log/Xorg.0.log), notate il seguente messaggio:

(WW) Falling back to old probe method for fbdev
(II) Loading sub module "fbdevhw"
(II) LoadModule: "fbdevhw"
(II) Loading /usr/lib/xorg/modules/linux//libfbdevhw.so
(II) Module fbdevhw: vendor="X.Org Foundation"
compiled for 1.6.1, module version=0.0.2
ABI class: X.Org Video Driver, version 5.0
(II) FBDEV(1): using default device

Fatal server error:
Cannot run in framebuffer mode. Please specify busIDs for all framebuffer devices

Disinstallate fbdev:

pacman -R xf86-video-fbdev

4.3 DRI smette di funzionare con le schede Matrox
Se usate una scheda Matrox e DRI smette di funzionare dopo aver aggiornato Xorg, provate ad aggiungere la riga:

Option "OldDmaInit" "On"

alla sezione Device che fa riferimento alla vostra scheda video nello xorg.conf.

5. Links utili

Precedente | Indice | Successiva

Torna in alto