Difference between revisions of "Xorg (Italiano)"

From ArchWiki
Jump to: navigation, search
m (pagina allineata)
m (Utilizzando i file .conf: corretto template)
Line 79: Line 79:
 
=== Utilizzando i file .conf ===
 
=== Utilizzando i file .conf ===
  
La cartella {{ic|/etc/X11/xorg.conf.d/}} include configurazioni specifiche dell'utente. Siete liberi di aggiungere i file di configurazione nella directory, ma devono avere un suffiso {{ic|.conf}: i file vengono letti in ordine ASCII, e per convenzione i loro nomi devono iniziare con {{ic|'''XX'''-}} (due cifre ed un trattino, in modo che per esempio 10 viene letto prima di 20). Questi file vengono analizzati dal server X all'avvio e sono trattati come parte del tradizionale file di configurazione {{ic|xorg.conf}}. Il server X tratta essenzialmente la raccolta di file di configurazione, come un unico grande file con le voci di {{ic|xorg.conf}} alla fine.
+
La cartella {{ic|/etc/X11/xorg.conf.d/}} include configurazioni specifiche dell'utente. Siete liberi di aggiungere i file di configurazione nella directory, ma devono avere un suffiso {{ic|.conf}}: i file vengono letti in ordine ASCII, e per convenzione i loro nomi devono iniziare con {{ic|'''XX'''-}} (due cifre ed un trattino, in modo che per esempio 10 viene letto prima di 20). Questi file vengono analizzati dal server X all'avvio e sono trattati come parte del tradizionale file di configurazione {{ic|xorg.conf}}. Il server X tratta essenzialmente la raccolta di file di configurazione, come un unico grande file con le voci di {{ic|xorg.conf}} alla fine.
  
 
=== Usare xorg.conf ===
 
=== Usare xorg.conf ===

Revision as of 21:58, 20 July 2013


Sommario help replacing me
Una panoramica sommaria sull'installazione e la gestione di Xorg
Panoramica
Template:Graphical user interface overview (Italiano)
Articoli correlati
Avviare X al login
xprofile
Display Manager
Gestori di finestre
Configurazione dei Font
Temi dei cursori
All Mouse Buttons Working
Ambienti Desktop
Wayland
Driver video liberi
Intel
ATI
Nouveau
Driver video proprietati
AMD Catalyst
NVIDIA

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.

Contents

Installazione

Per prima cosa installare il server X tramite il pacchetto xorg-server, reperobile nei Depositi ufficiali. Si consigliano inoltre i programmi di utilità contenute nel gruppo xorg-apps.

# pacman -Syu xorg-server

Udev sarà in grado di rilevare tutto l'hardware ed evdev agirà come driver di ingresso hotplugging per quasi tutti i dispositivi. Udev è fornito da systemd e xf86-input-evdev è richiesto dal pacchetto xorg-server

Suggerimento: L' ambiente di default X è piuttosto spoglia , e si cercherà in linea di installare un window manager or a desktop environment in supplemento ad X.

Avvio

Si veda anche: Avviare X al login

Suggerimento: Il modo più semplice per avviare X è quello di utilizzare un display manager, come GDM, KDM o SLiM.

Se si desidera avviare X senza l'ausilio di un display manager, si installi il pacchetto xorg-xinit. Opzionalmente anche i pacchetti xorg-twm, xorg-xclock e xterm, che permettono di avere un ambiente di lavoro predefinito, come descritto in seguito.

I comandi startx e xinit permettono di avviare il server X ed il lato client (lo script startx è solamente un front end al comando xinit). Per determinare il client da avviare, startx/xinit cercherà prima di analizzare un file ~/.xinitrc nella directory home dell'utente. In assenza del file ~/.xinitrc, analizzerà il file globale predefinito /etc/X11/xinit/xinitrc, che ha come valore predefinito, quello di iniziare un ambiente di base con il window manager Twm, Xclock e Xterm.

Nota: X deve sempre essere eseguito sulla stessa tty in cui si è verificato il login, per preservare la sessione logind. Questo è gestito in modo predefinito da /etc/X11/xinit/xserverrc.
Attenzione: Se si sceglie di utilizzare xinit al posto di startx, siate responsabili di passare il parametro -nolisten tcp e di garantire che la sessione non si rompa avviando X su una tty diversa.

Per maggiori informazioni, si veda xinitrc.

Nota:
  • Se si verifica un problema, potete visualizzare il log di registro di /var/log/Xorg.0.log. Cercate tutte le linee che iniziano con (EE), che identificano la presenza di un errore, e anche le linee che iniziano cone (WW), che sono dei warnings che possono identificare un eventuale problema.
  • Se avete un file .xinitrc vuoto nella vostra $HOME, eliminatelo o modificatelo al fine di avviare X correttamente. Se non si esegue questa operazione X mostrerà una schermata vuota e nel vostro Xorg.0.log non riscontrerete nessun errore rilevante. Semplicemente eliminandolo farà sì che X sia in grado di funzionare con un ambiente predefinito.

Configurazione

Note: Arch Linux fornisce dei file di configurazione predefiniti in /etc/X11/xorg.conf.d, e nessuna configurazione aggiuntiva è necessaria per la maggior parte delle configurazioni.

Xorg usa un file di configurazione chiamato xorg.conf e file che terminano con il suffisso .conf per la sua configurazione iniziale : l' elenco completo delle cartelle in cui i file vengono cercati può essere trovato qui o eseguendo man xorg.conf, insieme ad una spiegazione dettagliata di tutte le le opzioni disponibili.

Utilizzando i file .conf

La cartella /etc/X11/xorg.conf.d/ include configurazioni specifiche dell'utente. Siete liberi di aggiungere i file di configurazione nella directory, ma devono avere un suffiso .conf: i file vengono letti in ordine ASCII, e per convenzione i loro nomi devono iniziare con XX- (due cifre ed un trattino, in modo che per esempio 10 viene letto prima di 20). Questi file vengono analizzati dal server X all'avvio e sono trattati come parte del tradizionale file di configurazione xorg.conf. Il server X tratta essenzialmente la raccolta di file di configurazione, come un unico grande file con le voci di xorg.conf alla fine.

Usare xorg.conf

Xorg può anche essere configurato tramite /etc/X11/xorg.conf o /etc/xorg.conf. Potete generare uno scheletro di xorg.conf tramite:

 # Xorg :0 -configure

Questo dovrebbe creare un file xorg.conf.new in /root/ che dovrete copiare come /etc/X11/xorg.conf, per maggiori informazioni si veda man xorg.conf.

In alternativa, i driver proprietari della scheda video potrebbero includere uno strumento per configurare automaticamente Xorg. Si veda l'articolo relativo al proprio driver video, NVIDIA o AMD Catalyst per i dettagli.

Nota: Le parole chiavi del file di configurazione sono case-insensitive, e i caratteri "_" vengono ignorati. La maggior parte delle stringhe (compresi i nomi di Option ) sono case-insensitive, e insensibili agli spazi bianchi e caratteri "_".

Dispositivi di input

L'installazione dei driver di input non è necessaria per la maggior parte dell'hardware. Tuttavia, se evdev non supporta il dispositivo, installare il driver necessario dal gruppo xorg-driver (lanciare pacman -Sg xorg-drivers per averne un elenco).

Si dovrebbe avere il file 10-evdev.conf nella directory /etc/X11/xorg.conf.d/, che gestisce la tastiera, il mouse, il touchpad e il touchscreen.

Touchpad Synaptics

Main page: Touchpad Synaptics

Se avete un portatile, è necessario installare il driver per il touchpad, fornito dal pacchetto xf86-input-synaptics, reperibile nei repositori ufficiali.

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

Disabilitare Input Hot-plugging

Dalla versione 1.8 Xorg-server usa udev per il rilevamento dei dispositivi. Ciò che segue disabiliterà udev.

Section "ServerFlags"
    Option "AutoAddDevices" "False"
EndSection
Attenzione: Questa operazione disabiliterà l'hot-plugging di Xorg per tutti i dispositivi di input e si riavranno le caratteristiche proprie di xorg-server 1.4. E ' molto più conveniente lasciare che udev configurare i vostri dispositivi. Per tanto, disabilitare Hot-plugging, non è consigliato!.

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 impostato 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

Ritardo di ripetizione e frequenza dei tasti

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

Visualizzazione delle impostazioni della tastiera

$ setxkbmap -print -verbose 10

 Setting verbose level to 10
 locale is C
 Applied rules from evdev:
 model:      evdev
 layout:     it
 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)"     };
 };

Impostare la mappatura della tastiera con Hot-Plugging

Nota: Se state utilizzando l'ambiente desktop GNOME, queste impostazioni verranno ignorate. Dovrete impostare il layout della tastiera dalla applet della tastiera di GNOME. Segui il link layout della tastiera, e aggiungere il layout desiderato e rimuovere qualsiasi altro non desiderato. Per XkbOptions, vedere GNOME#Modify_Keyboard_with_XkbOptions.

Per cambiare il layout della propria tastiera, creare un file numbero-*.conf (es. 10-keyboard.conf) con il seguente contenuto:

/etc/X11/xorg.conf.d/10-keyboard.conf
Section "InputClass"
    Identifier             "Keyboard Defaults"
    MatchIsKeyboard	   "yes"
    Option	           "XkbLayout" "it"
    Option                 "XkbVariant" "colemak"
EndSection
Nota: Ecco un esempio configurtion per l'impostazione del layout di tastiera Dvorak a livello di sistema. Funziona su gestori di sessioni, come slim e gdm.
/etc/X11/xorg.conf.d/10-keyboard.conf
Section "InputClass"
    Identifier             "Keyboard Defaults"
    MatchIsKeyboard	   "yes"
    Option	           "XkbLayout" "dvorak"
EndSection

In alternativa è possibile combinare XkbLayout e XkbVariant:

/etc/X11/xorg.conf.d/10-keyboard.conf
Section "InputClass"
    Identifier             "Keyboard Defaults"
    MatchIsKeyboard	   "yes"
    Option	           "XkbLayout" "ot(colemak)"
EndSection

Impostare la mappatura della tastiera senza Hot-Plugging (deprecato)

Note: Cambiare il layout di tastiera con questo metodo richiede la disabilitazione dell'inserimento hot-plugging.

Per cambiare il layout della tastiera, si usi l'opzione XkbLayout nella sezione InputDevice keyboard. Per esempio, se si possiede una tastiera con layout italiano, la propria sezione InputDevice per la tastiera potrebbe essere simile a questa:

Section "InputDevice"
    Identifier     "Keyboard0"
    Driver         "kbd"
    Option "XkbLayout" "it"
EndSection

Per cambiare il modello della tastiera, si usi l'opzione XkbModel nella sezione InputDevice keyboard. per esempio, nel caso di una tastiera Microsoft Wireless Multimedia:

Option "XkbModel" "microsoftmult"

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, per passare tra un layout italiano e uno americano con il tasto Blocco Maiuscole attivato, creare un file /etc/X11/xorg.conf.d/01-keyboard-layout.conf ed aggiungerci il contenuto seguente:

Section "InputClass"
        Identifier "keyboard-layout"
        Driver "evdev"
        MatchIsKeyboard "yes"
        Option "XkbLayout"  "it, us"
        Option "XkbOptions" "grp:caps_toggle"
EndSection


In alternativa, è possibile aggiungere quanto segue in .xinitrc:

setxkbmap -layout "us, se" -option "grp:caps_toggle"

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

Suggerimento: Se si desidera ottenere un elenco di possibili valori per il layout e le opzioni , è possibile trovare in /usr/share/X11/xkb/rules/xorg.lst. Sono visualizzati rispettivamente sotto le sezioni !Layout e !option.

Abilitare i pointerkeys

I mouse keys ora sono disabilitati per default e devono essere attivati manualmente:

/etc/X11/xorg.conf.d/20-enable-pointerkeys.conf
Section "InputClass"
    Identifier             "Keyboard Defaults"
    MatchIsKeyboard        "yes"
    Option                 "XkbOptions" "keypad:pointerkeys"
EndSection

Si può anche eseguire:

$ setxkbmap -option keypad:pointerkeys

Entrambi i metodi abiliteranno la scorciatoia Template:Keypress.

InputClasses

Preso da: https://fedoraproject.org/wiki/Input_device_configuration

Gli inputClasses sono una nuova sezione di configurazione che non si applica ad un singolo dispositivo ma piuttosto ad una classe di dispositivi, compresi i dispositivi dinamici. Una sezione InputClass è limitata dalle parti specificate da applicare ad un dispositivo di input: tutte le parti saranno applicate a un dispositivo. Un esempio viene riportato di seguito:

Section "InputClass"
    Identifier      "touchpad catchall"
    MatchIsTouchpad "on"
    Driver           "synaptics"
EndSection

Il prossimo frammento potrebbe anche essere utile:

Section "InputClass"
        Identifier "evdev touchpad catchall"
        MatchIsTouchpad "on"
        MatchDevicePath "/dev/input/event*"
        Driver "evdev"
EndSection

Se questo frammento è presente nel file xorg.conf o xorg.conf.d, ad ogni touchpad eventualmente presente nel sistema verrà assegnato il driver Synaptics. Si noti che a causa dell'ordine di precedenza (ordinamento alfanumerico dei frammenti xorg.conf.d) l'impostazione del driver sovrascrive le opzioni del driver precedentemente impostato, il più generico della classe, quello che dovrebbe essere elencato per primo. Il frammento di default fornito con il pacchetto xorg-x11-drv-00-Xorg è 00-evdev.conf e applica il driver evdev a tutti i dispositivi di input.

Le opzioni di abbinamento specificano a quali dispositivi può essere applicata una sezione. Per abbinare un dispositivo, tutte le righe devono essere applicate. Le righe seguenti sono supportate (con esempi):

  • MatchIsPointer, MatchIsKeyboard, MatchIsTouchpad, MatchIsTouchscreen, MatchIsJoystick – opzioni booleane da applicare ad un gruppo di dispositivi.
  • MatchProduct "foo|bar": abbina ogni dispositivo con il nome di un prodotto contenente sia "foo" che "bar"
  • MatchVendor "foo|bar|baz": abbina ogni dispositivo la cui stringa del vendor contenga "foo", "bar", o "baz"
  • MatchDevicePath "/dev/input/event*": abbina con qualsiasi dispositivo con un percorso di dispositivo corrispondente alla patch data (vedi fnmatch (3) per il modello di permesso)
  • MatchTag "foo|bar": abbina con qualsiasi dispositivo il cui tag sia "foo" o "bar". I tag possono essere assegnati dal backend config, udev nel nostro caso, per etichettare i dispositivi che hanno bisogno di configurazioni particolari.

Una sezione d'esempio per configurazioni specifiche è la seguente:

Section "InputClass"
    Identifier     "lasermouse slowdown"
    MatchIsPointer "on"
    MatchProduct   "Lasermouse"
    MatchVendor    "LaserMouse Inc."
    Option         "ConstantDeceleration" 20
EndSection

Questa sezione dovrebbe corrispondere a un dispositivo di puntamento contenente "Lasermouse", da "Lasermouse Inc", e applicare una decelerazione costante di 20 su questo dispositivo.

Alcuni dispositivi possono venire abilitati dal server X, quando in realtà non lo dovrebbero essere. Questi dispositivi possono essere configurati per essere ignorati:

Section "InputClass"
    Identifier     "no need for accelerometers in X"
    MatchProduct   "accelerometer"
    Option         "Ignore" "on"
EndSection

Esempio di configurazioni

La sezione seguente descrive alcune configurazioni d'esempio riguardo opzioni di configurazione di uso comune. Si noti che se si utilizza un ambiente desktop come GNOME o KDE, le opzioni impostate nel file xorg.conf possono essere sovrascritte con opzioni specifiche per l'utente al login.

Esempio: emulazione rotellina (per un trackpoint)

Se possedete un computer con un Trackpoint (un Thinkpad per esempio) si può aggiungere quanto segue al file xorg.conf per usare il tasto centrale emulando la rotellina del mouse:

Section "InputClass"
    Identifier     "Wheel Emulation"
    MatchIsPointer "on"
    MatchProduct   "TrackPoint"
    Option         "EmulateWheelButton" "2"
    Option "EmulateWheel" "on"
EndSection

Per il supporto completo al trackpoint (compreso lo scorrimento orizzontale), è possibile utilizzare il seguente:

Section "InputClass"
    Identifier	"Trackpoint Wheel Emulation"
    MatchProduct	"TPPS/2 IBM TrackPoint|DualPoint Stick|Synaptics Inc. Composite TouchPad / TrackPoint|ThinkPad USB Keyboard with TrackPoint|USB Trackpoint pointing device"
    MatchDevicePath	"/dev/input/event*"
    Option		"EmulateWheel"		"true"
    Option		"EmulateWheelButton"	"2"
    Option		"Emulate3Buttons"	"false"
    Option		"XAxisMapping"		"6 7"
    Option		"YAxisMapping"		"4 5"
EndSection
Esempio: Tap-to-click

Il tap-to-click può essere attivato nella finestra di configurazione del mouse (nella scheda touchpad), ma se si ha bisogno di questa funzionalità già abilitata al gdm, la specifica seguente è quella più adatta:

Section "InputClass"
    Identifier "tap-by-default"
    MatchIsTouchpad "on"
    Option "TapButton1" "1"
EndSection
Esempio: la tastiera ed il modello su Acer 5920G Laptop

Il modello e il layout della tastiera può essere impostato nel file /etc/X11/xorg.conf.d/keyboard.conf o qualsiasi altro file .conf nella stessa directory.

  • MatchIsKeyboard "yes": imposta il dispositivo di input per una tastiera
  • Option "XkbLayout" "it": imposta il layout di tastiera alla lingua italiana. Si può sostituire it con qualsiasi altro layout.
  • Option "XkbModel" "acer_laptop": imposta il modello di tastiera per una tastiera di computer portatile Acer. Si può sostituire acer_laptop con il proprio layout.
  • Option "XkbVariant" "sundeadkeys": imposta la variante layout ai Sun dead keys. Si può omettere l'opzione XkbVariant utilizzando la variante predefinita.

laptop keyboard. Si può sostituire acer_laptop con il layout di tastiera attuale.

Si noti che un elenco di layout di tastiera e modelli possono essere trovati in /usr/share/X11/xkb/rules/base.lst

Section "InputClass"
    Identifier             "Keyboard Defaults"
    MatchIsKeyboard        "yes"
    Option                 "XkbModel" "acer_laptop"
    Option                 "XkbLayout" "it"
    Option                 "XkbVariant" "sundeadkeys"
EndSection
Esempio: emulazione del terzo tasto (per tutti i mouse collegati)

L'emulazione del terzo pulsante consente di utilizzare i pulsanti 1 e 2 (click sinistro e destro) insieme per produrre un evento per il pulsante 3 (centrale del mouse), che è davvero utile per copiare e incollare in X.

Bisogna modificare input catchall in /etc/X11/xorg.conf.d/10-evdev.conf

Section "InputClass"
        Identifier "evdev pointer catchall"
        MatchIsPointer "on"
        MatchDevicePath "/dev/input/event*"
        Driver "evdev"
        Option "Emulate3Buttons"     "True"
        Option "Emulate3Timeout"     "25"
EndSection

Qui potete vedere le opzioni {ic|Option "Emulate3Buttons" "True"}} e Option "Emulate3Timeout" "25" che specificano che il pulsante 3 deve essere emulato con un ritardo di riconoscimento dei due pulsanti come tasto centrale di 25ms.

Schede Grafiche

Installazione dei Driver

Il driver grafico predefinito è vesa (xf86-video-vesa), che gestisce un gran numero di chipset, ma non include alcuna accelerazione 2D o 3D. Per abilitare l'accelerazione grafica, è necessario installare e utilizzare il driver specifico per la scheda grafica.

Per identificare la vostra scheda:

$ lspci | grep "VGA"

Quindi, installare un driver appropriato. È possibile cercare questi pacchetti con il seguente comando:

# pacman -Ss xf86-video

Driver comuni open source:

Driver comuni 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.

Impostazioni del monitor

Come iniziare

Note:
  • Questo passo è OPZIONALE e non dovrebbe essere fatto se non si sa cosa si sta facendo.
  • Questo passaggio è OBBLIGATORIO se si usano due monitor o i driver nouveau. Consultare Nouveau (Italiano)#Configurazione.}}
  • Per prima cosa, creare un nuovo file di configurazione, /etc/X11/xorg.conf.d/10-monitor.conf.

    Inserire il codice riportato in seguito nel file creato sopra:

    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
    

    Monitor multipli/Doppio schermo

    Nvidia

    Si veda la sezione NVIDIA (Italiano)#Monitor multipli.

    Più schede grafiche

    È necessario definire il driver da utilizzare ed aggiungere l'ID bus della scheda grafica.

    Section "Device"
        Identifier      "Screen0"
        Driver          "nouveau"
        BusID           "PCI:0:12:0"
    EndSection
    
    Section "Device"
        Identifier      "Screen1"
        Driver          "radeon"
        BusID           "PCI:1:0:0"
    EndSection
    

    Per ottenere l'ID bus :

    $ lspci | grep VGA
    01:00.0 VGA compatible controller: nVidia Corporation G96 [GeForce 9600M GT] (rev a1)
    

    Nell'esempio, l'ID bus è 1:0:0.

    Script per passare dal display interno/esterno nei portatili

    Eseguire il seguente script dopo la connessione a display esterni con il computer per modificare la visualizzazione usata da Xorg. Controlla se un display è collegato alla porta specificata in EXT prima di cambiare display .

    Per scoprire i nomi visualizzati da specificare in EXT eseguire:

    # xrandr -q
    

    Il display interno deve essere collegato durante l'esecuzione dello script, che è sempre vero per un computer portatile. Per utilizzare questo script il pacchetto xorg-xrandr deve essere installato.

    #!/bin/bash
    
    IN="LVDS1"
    EXT="VGA1"
    
    if (xrandr | grep "$EXT" | grep "+")
        then
        xrandr --output $EXT --off --output $IN --auto
        else
            if (xrandr | grep "$EXT" | grep " connected")
                then
                xrandr --output $IN --off --output $EXT --auto
            fi
    fi
    

    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. Ad esempio, un LCD 19" widescreen 1440x900 può avere un DPI di 89x87. 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. Xorg imposta sempre a 96 dpi . Vedi questo ,questo e infine questo.

    Per verificare se le dimensioni del display e DPI sono rilevati e calcolati correttamente:

    $ xdpyinfo | grep -B2 resolution
    


    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 si desidera inserire solamente le specifiche del monitor senza creare un file xorg.conf completo, in primo luogo creare un nuovo file di configurazione, per esempio, /etc/X11/xorg.conf.d/90-monitor.conf:

    Section "Monitor"
        Identifier "<default monitor>"
        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
    
    Nota: 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.
    Impostazione manuale DPI

    Il DPI può essere impostato manualmente solo se si prevede di utilizzare una risoluzione DPI calculator):

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

    Se si utilizza una scheda Nvidia, è possibile impostare manualmente il DPI aggiungendo le seguenti opzioni su /etc/X11/xorg.conf.d/20-nvidia.conf (nella sezione Device):

    Option "UseEdidDpi" "False"
    Option  "DPI" "96 x 96"
    

    Per i driver compatibili con RandR, è possibile impostare:

    xrandr --dpi 96
    

    Consultare Execute commands after X start per salvare le modifiche.

    Nota: Mentre è possibile impostare qualsiasi dpi a piacimento le applicazioni che utilizzando Qt e GTK le scaleranno di conseguenza, si consiglia quindi di impostarlo su 96, 120 (25 % in più), 144 (il 50 % in più), 168 (il 75 % in più), 192 (100 % in più) , ecc , per ridurre gli artefatti di scaling di GUI che utilizzano immagini bitmap. Riducendola sotto 96 dpi non può ridurre la dimensione di elementi grafici di interfaccia grafica come in genere la più bassa dpi utilizzata per le icone sono fatte per 96.

    DPMS

    Il DPMS (Display Power Management Signaling) è una tecnologia che permette il risparmio energetico dei monitor quando il computer non è in uso. Ciò permetterà di avere monitor che vanno automaticamente in standby dopo un determinato periodo . Si veda: DPMS

    Composite

    L'estensione Composite per X provoca un intero sotto-albero della gerarchia della finestra per eseguire il rendering di un buffer fuori schermo. Le applicazioni possono poi prendere il contenuto di questo buffer e farne ciò che vogliono. Il buffer off-screen può essere fatto confluire automaticamente nella finestra padre o fusa per programmi esterni, chiamati manager compositing. Vedere le pagine seguenti per ulteriori informazioni .

    Esempi di configurazione

    Chiunque abbia redatto un file xorg.conf funzionante, vada avanti e condivida qui un link ad esso per permettere ad altri di consultarlo. Non si inserisca tutto il file di configurazione; lo si carichi da qualche altra parte e si incolli il link.

    Si inseriscano solo configurazioni di hotplugging, altrimenti si avvisi che la propria configurazione non usa l'input hotplugging. (Xorg 1.8 = udev)

    Esempio 1: xorg.conf & /etc/X11/xorg.conf.d/10-evdev.conf

    Questo è un esempio di file di configurazione che utilizza xorg.conf.d/10-evdev.conf per il layout della tastiera.

    Nota: Le sezioni "InputDevice" sono commentate, questo perché ora sarà /etc/X11/xorg.conf.d/10-evdev.conf a farsi carico delle configurazioni.
    xorg.conf: http://pastebin.com/raw.php?i=EuSKahkn
    /etc/X11/xorg.conf.d/10-evdev.conf: http://pastebin.com/raw.php?i=4mPY35Mw>
    /etc/X11/xorg.conf.d/10-monitor.conf (VMware): http://pastebin.com/raw.php?i=fJv8EXGb
    /etc/X11/xorg.conf.d/10-monitor.conf (KVM): http://pastebin.com/raw.php?i=NRz7v0Kn
    

    Consigli utili

    Modifiche allo script di avvio di X (/usr/bin/startx)

    Per le opzioni di X si consulti:

    $ man Xserver
    

    Le seguenti opzioni devono essere aggiunte alla variabile "defaultserverargs" nel file /usr/bin/startx.

    • abilitare il caricamento ritardato dei glyph per i font a 16 bit:
    -deferglyphs 16
    
    Nota: Se si avvia X con kdm, sembra che lo script startx non venga eseguito. Queste opzioni devono essere aggiunte alla variabile "ServerArgsLocal" o "ServerCmd" nel file /usr/share/config/kdm/kdmrc. Le opzioni di kdm predefinite sono:
    ServerArgsLocal=-nolisten tcp
    ServerCmd=/usr/bin/X

    Sessioni di X una dentro l'altra

    Per avviare una sessione di X di un altro desktop environment dentro la presente:

    $ /usr/bin/Xnest :1 -geometry 1024x768+0+0 -ac -name Windowmaker & wmaker -display :1
    

    Questo lancerà una sessione Window Maker in una finestra 1024x768 dentro la sessione corrente di X.

    Richiede l'installazione del pacchetto xorg-server-xnest.

    Avvio programmi con interfaccia grafica in remoto

    Per avviare un programma che utilizza X quando si accede da remoto (ad esempio tramite ssh), è necessario digitare questo dalla shell di login Bash remota :

     export DISPLAY = : 0 
    

    Poi richiamare il programma come si farebbe a livello locale dalla shell.

    Suggerimento: Aggiungere questa linea al proprio file ~/.bashrc permette di averlo automaticamente avviato ogni volta che si accedere.

    Disattivazione e attivazione a richiesta delle sorgenti di ingresso

    Con l'aiuto di xinput è possibile disabilitare o abilitare le sorgenti di ingresso temporaneamente. Questo potrebbe essere utile, ad esempio, su sistemi che hanno più di un mouse, come ad esempio i ThinkPad, e si preferisce utilizzarne solo uno per evitare clic indesiderati del mouse. Vediamo come eseguire questa operazione .

    Installare xinput contenuto nel pacchetto xorg-xinput:
    # pacman -S xorg-xinput
    Trovare l'ID del dispositivo che si intende disabilitare:
    xinput

    Per esempio in un Lenovo ThinkPad T500, l'output del comando sarà simile a questo:

    $ xinput
    ⎡ Virtual core pointer                    	id=2	[master pointer  (3)]
    ⎜   ↳ Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
    ⎜   ↳ TPPS/2 IBM TrackPoint                   	id=11	[slave  pointer  (2)]
    ⎜   ↳ SynPS/2 Synaptics TouchPad              	id=10	[slave  pointer  (2)]
    ⎣ Virtual core keyboard                   	id=3	[master keyboard (2)]
        ↳ Virtual core XTEST keyboard             	id=5	[slave  keyboard (3)]
        ↳ Power Button                            	id=6	[slave  keyboard (3)]
        ↳ Video Bus                               	id=7	[slave  keyboard (3)]
        ↳ Sleep Button                            	id=8	[slave  keyboard (3)]
        ↳ AT Translated Set 2 keyboard            	id=9	[slave  keyboard (3)]
        ↳ ThinkPad Extra Buttons                  	id=12	[slave  keyboard (3)]
    

    Disabilitare il dispositivo con xinput --disable DISPOSITIVO, dove per DISPOSITIVO si intende l'ID del dispistico che si vuole disabilitare. In questo esempio proverem,o a disabilitare il touchpad Synaptics, che ha come valore di ID 10:

    xinput --disable 10

    Per riabilitare il dispositivo basta dare il comando opposto:

    xinput --enable DEVICE

    Risoluzione dei problemi

    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.

    Ctrl-Alt-Backspace non funziona

    Ci sono due modi per riabilitare Template:Keypress; con e senza input-hotplugging. Usare l'hot-plugging è la scelta consigliata.

    Con input hot-plugging

    Configurazione globale di sistema

    Aggiungere in /etc/X11/xorg.conf.d/10-evdev.conf la seguente sezione:

    Section "InputClass"
        Identifier          "Keyboard Defaults"
        MatchIsKeyboard	"yes"
        Option              "XkbOptions" "terminate:ctrl_alt_bksp"
    EndSection
    
    Nota:
    • Utilizzando Gnome, un'alternativa potrebbe essere quella di installare Gnome-tweak-tool gnome da [extra]. All'interno del Gnome Tweak Tool: Typing > Terminate e selezionare l' opzione Template:Keypress dal menu a discesa. Ciò riattiva la scelta rapida da tastiera per l'uccisione del server X in Gnome.
    • In KDE, questa impostazione a livello di sistema non ha effetto. Per ripristinarla, andare su Impostazioni di sistema e cliccare su 'Input Devices'. In questa nuova finestra fare clic sulla scheda Tastiera e quindi selezionare la casella "Enable Keyboard layouts". Questo vi permetterà di fare clic sulla scheda Avanzate. In questa nuova finestra, espandere la voce relativa "Sequenza di tasti per terminare il server X" e assicurarsi che Control + Alt + Backspace sia selezionato. Fare clic su Applica e chiudere la finestra Impostazioni di sistema. Ora si riavrà la funzionalità CTRL-ALT-Backspace su KDE.
    Configurazione specifica dell'utente

    Un altro modo consiste nell'aggiungere questa linea a xinitrc:

    setxkbmap -option terminate:ctrl_alt_bksp
    
    Nota: Questa configurazione non funziona su Gnome 3.

    Senza input hot-plugging

    Il nuovo Xorg disabilita di default il metodo di venire terminato con Template:Keypress. Si può riabilitarla aggiungendo la seguente linea in /etc/X11/xorg.conf:

    Option  "XkbOptions" "terminate:ctrl_alt_bksp" 
    

    alla sezione InputDevice per la tastiera.

    Il tasto CTRL di destra non funziona su tastiere oss

    Editare come root il file /usr/share/X11/xkb/symbols/fr, e cambiare la linea :

    include "level5(rctrl_switch)"

    in

    // include "level5(rctrl_switch)"

    Riavviare X oppure il sistema.

    Problemi con tastiere Apple

    Consultate il wiki: Apple Keyboard

    Problemi con il tap-click del Touchpad

    Consultate il wiki Synaptics

    Tasti extra del mouse non riconosciuti

    Consultare: Get All Mouse Buttons Working

    Errore avviando il client X con "su"

    Se ottenete il messaggio di errore "Client is not authorized to connect to server" (il client non è autorizzato a connettersi al server), provate ad aggiungere la seguente stringa:

    session        optional        pam_xauth.so
    

    al file /etc/pam.d/su. pam_xauth sarà quindi impostato per gestire le chiavi di xauth e le variabili d'ambiente.

    Programmi che richiedono "font '(null)'"

    • Messaggio di errore: "unable to load font `(null)'." (Impossibile caricare il tipo di carattere (null))

    Alcuni programmi funzionano solo con i font bitmap. Sono disponibili due pacchetti principali con i font bitmap, xorg-fonts-75dpi e xorg-fonts-100dpi. Non vi è la necessità di installarli entrambi: uno solo di essi dovrebbe essere sufficiente. Per scoprire quale dei due pacchetti è più indicato per le vostre esigenze, lanciate il seguente comando in un terminale:

    $ xdpyinfo | grep resolution
    

    quindi installate il pacchetto che più si avvicina al vostro dato (75 o 100 al posto di XX)

    # pacman -S xorg-fonts-XXdpi
    

    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
    

    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.

    Ripristino: disattivare Xorg prima della schermata di login

    Se Xorg è impostato per avviarsi automaticamente e per qualche motivo è necessario evitare che si avvii prima che si presenti la schermata di login o che si entri nella propria sessione grafica (se ad esempio rc.conf è erroneamente configurato e Xorg non riconosce il mouse o la tastiera), è possibile disattivare il suo caricamento in due modi.

    • Dal menu di GRUB, è possibile specificare il runlevel nella linea del kernel aggiungendo un numero alla fine della riga del kernel specificando il livello di esecuzione che si desidera. L'esempio seguente imposta il livello di esecuzione a 3:
     kernel /boot/vmlinuz26 root=/dev/disk/by-uuid/..ro 3
    
    • Se oltre ad avere problemi con il file rc.conf, avete anche impostato il tempo di attesa del menu di GRUB a zero, o non potete altrimenti utilizzare grub per impedire l'avvio di Xorg, è possibile utilizzare il CD live di Arch. Avviare il CD live ed effettuate il login come root. A questo punto necessitate di un punto di mount, ad esempio /mnt, ed è necessario conoscere il nome della partizione che si desidera montare al suo interno.
    Potete utilizzare il comando,
     # fdisk -l
    
    per vedere le vostre partizioni. Di solito, quello che si desidera sarà simile a /dev/sda1. Dopodiché montate la vostra partizione in /mnt, utilizzando il comando
     # mount /dev/sda1 /mnt
    
    In questo modo il file-system verrà visualizzato sotto /mnt. Da qui potate eliminare il modulo gdm ( o similare) per impedire l'avvio di Xorg normalmente, o apportare altre modifiche necessarie.

    Errore di X all'avvio : Inizializzazione della tastiera fallito

    Se il disco rigido è pieno, startx fallisce. La fine di /var/log/Xorg.0.log sarà:

    (EE) Error compiling keymap (server-0)
    (EE) XKB: Couldn't compile keymap
    (EE) XKB: Failed to load keymap. Loading default keymap instead.
    (EE) Error compiling keymap (server-0)
    (EE) XKB: Couldn't compile keymap
    XKB: Failed to compile keymap
    Keyboard initialization failed. This could be a missing or incorrect setup of xkeyboard-config.
    Fatal server error:
    Failed to activate core devices.
    Please consult the The X.Org Foundation support  at http://wiki.x.org
    for help.
    Please also check the log file at "/var/log/Xorg.0.log" for additional information.
     (II) AIGLX: Suspending AIGLX clients for VT switch
    

    Liberare un po' di spazio sulla partizione root e X verrà eseguito.

    Schermo nero, nessun protocollo specificato .., Risorsa temporaneamente non disponibile per tutti o alcuni utenti

    X crea i file di configurazione e temporanei nella directory home dell'utente corrente. Assicurarsi che ci sia spazio libero su disco disponibile nella partizione dive la directory home risiede. Purtroppo, in questo caso, il server X non fornisce informazioni più evidenti per la mancanza di spazio su disco.