Xorg (Français)

État de la traduction:
Cet article est la version francophone de
Xorg
. Date de la dernière traduction: 2022-10-03. Vous pouvez aider à synchroniser la traduction s'il y a eu des
changements
dans la version anglaise.
Related articles
Autostarting
Display manager (Français)
Window manager (Français)
Font configuration
Cursor themes
Desktop environment
Wayland (Français)
xinit (Français)
xrandr
XDMCP
Selon
https://www.x.org/wiki/
:
Le projet X.Org fournit une implémentation open source du
X Window System
. Le travail de développement est réalisé en collaboration avec la communauté freedesktop.org. La Fondation X.Org est une société éducative à but non lucratif dont le conseil d'administration est au service de cet effort et dont les membres dirigent ce travail.
Xorg
(communément appelé simplement
X
) est le serveur d'affichage le plus populaire parmi les utilisateurs de Linux. Son omniprésence a conduit à en faire un élément indispensable pour les applications d'interface graphique, ce qui a entraîné une adoption massive de la plupart des distributions. Consultez l'article
Xorg
. Wikipedia ou visitez le
Xorg website
pour plus de détails.
Pour l'alternative et le successeur potentiel, renseignez-vous sur
Wayland
.
Installation
Xorg peut être
installé
avec le paquet
xorg-server
.
De plus, certains paquets du groupe
xorg-apps
sont nécessaires pour certaines tâches de configuration. Ils sont signalés dans les sections correspondantes.
Enfin, un groupe
xorg
est également disponible, qui inclut les paquets du serveur Xorg, les paquets du groupe
xorg-apps
et les polices.
Installation des pilotes
Le noyau Linux comprend des pilotes vidéo à source ouverte et prend en charge les framebuffers accélérés par le matériel. Cependant, la prise en charge en espace utilisateur est nécessaire pour OpenGL et l'accélération 2D dans X11.
Tout d'abord, identifiez la carte graphique (la sortie
Subsystem
indique le modèle spécifique) :
$ lspci -v | grep -A1 -e VGA -e 3D
Ensuite, installez un pilote approprié. Vous pouvez consulter la base de données des paquets pour obtenir une liste complète des pilotes vidéo open-source :
$ pacman -Ss xf86-video
Xorg recherche automatiquement les pilotes installés :
S'il ne trouve pas le pilote spécifique installé pour le matériel (listé ci-dessous), il recherche d'abord
fbdev
(
xf86-video-fbdev
) qui n'inclue aucune accélération 2D ou 3D.
S'il ne le trouve pas, il recherche
vesa
(
xf86-video-vesa
), le pilote générique, qui gère un grand nombre de chipsets mais n'inclut pas d'accélération 2D ou 3D.
Si
vesa
n'est pas trouvé, Xorg se rabattra sur le
kernel mode setting
, qui inclut l'accélération GLAMOR (consultez
modesetting(4)
).
Pour que l'accélération vidéo fonctionne, et souvent pour exposer tous les modes que le GPU peut définir, un pilote vidéo approprié est nécessaire :
Marque
Type
Driver
OpenGL
OpenGL (
multilib
)
Documentation
AMD / ATI
Libre
xf86-video-amdgpu
mesa
lib32-mesa
AMDGPU
xf86-video-ati
ATI
Propriétaire
xf86-video-amdgpu
amdgpu-pro-oglp
AUR
lib32-amdgpu-pro-oglp
AUR
AMDGPU PRO
Intel
Libre
xf86-video-intel
1
mesa
lib32-mesa
Intel graphics
NVIDIA
Libre
xf86-video-nouveau
mesa
lib32-mesa
Nouveau
2
Propriétaire
nvidia
[
broken link
: package not found]
nvidia-utils
lib32-nvidia-utils
NVIDIA
2
nvidia-470xx-dkms
AUR
nvidia-470xx-utils
AUR
lib32-nvidia-470xx-utils
AUR
nvidia-390xx-dkms
AUR
nvidia-390xx-utils
AUR
lib32-nvidia-390xx-utils
AUR
Pour les cartes graphiques Intel de 4ème génération et plus, consultez
Intel graphics (Français)#Installation
pour connaître les pilotes disponibles.
Pour les ordinateurs portables équipés de NVIDIA Optimus qui utilisent une carte vidéo intégrée combinée à un GPU dédié, consultez
NVIDIA Optimus
.
D'autres pilotes vidéo peuvent être trouvés dans le groupe
xorg-drivers
.
Xorg devrait fonctionner sans problème sans pilotes à source fermée, qui ne sont généralement nécessaires que pour les fonctionnalités avancées telles que le rendu rapide en 3D pour les jeux. Les exceptions à cette règle sont les GPU récents (en particulier les GPU NVIDIA) qui ne sont pas pris en charge par les pilotes open source.
AMD
Pour une traduction des noms de modèles (par exemple,
Radeon RX 6800
) en architectures de GPU (par exemple,
RDNA 2
), consultez
wikipedia:List of AMD graphics processing units
.
GPU architecture
Open-source driver
Proprietary driver
RDNA, RDNA 2
AMDGPU
non disponible
GCN 3, GCN 4, GCN 5
GCN 1, GCN 2
AMDGPU
* /
ATI
non disponible
TeraScale
et antérieur
ATI
non disponible
* : Expérimental
Exécution
La commande
Xorg(1)
n'est généralement pas exécutée directement. Au lieu de cela, le serveur X est lancé avec un
gestionnaire d'affichage
ou
xinit
.
Astuce
Vous chercherez généralement à installer un
gestionnaire de fenêtres
ou un
environnement de bureau
en complément de X.
Configuration
Note
Arch fournit des fichiers de configuration par défaut dans
/usr/share/X11/xorg.conf.d/
, et aucune configuration supplémentaire n'est nécessaire pour la plupart des installations.
Xorg utilise un fichier de configuration appelé
xorg.conf
et des fichiers se terminant par le suffixe
.conf
pour sa configuration initiale : la liste complète des dossiers dans lesquels ces fichiers sont recherchés se trouve dans
xorg.conf(5)
, ainsi qu'une explication détaillée de toutes les options disponibles.
Utilisation des fichiers .conf
Le répertoire
/etc/X11/xorg.conf.d/
stocke la configuration spécifique à l'hôte. Vous êtes libre d'y ajouter des fichiers de configuration, mais ils doivent avoir un suffixe
.conf
: les fichiers sont lus dans l'ordre ASCII, et par convention, leurs noms commencent par
XX
-
(deux chiffres et un trait d'union, de sorte que par exemple 10 est lu avant 20). Ces fichiers sont analysés par le serveur X au démarrage et sont traités comme une partie du fichier de configuration traditionnel
xorg.conf
. Notez qu'en cas de conflit de configuration, le fichier lu
en dernier
sera conservé. Pour cette raison, les fichiers de configuration les plus génériques devraient être classés en premier par nom. Les entrées de configuration dans le fichier
xorg.conf
sont traitées à la fin.
Pour des exemples d'options à définir, consultez
Fedora:Input device configuration#xorg.conf.d
.
Utilisation de xorg.conf
Xorg peut également être configuré via
/etc/X11/xorg.conf
ou
/etc/xorg.conf
. Vous pouvez également générer un squelette pour
xorg.conf
avec :
# Xorg :0 -configure
Cela devrait créer un fichier
xorg.conf.new
dans
/root/
que vous pouvez copier dans
/etc/X11/xorg.conf
.
Astuce
Si vous exécutez déjà un serveur X, utilisez un affichage différent, par exemple
Xorg :2 -configure
.
Il se peut également que les pilotes de votre carte vidéo propriétaire soient fournis avec un outil permettant de configurer automatiquement Xorg : consultez l'article de votre pilote vidéo,
NVIDIA
, pour plus de détails.
Note
Les mots-clés des fichiers de configuration ne sont pas sensibles à la casse, et les caractères "_" sont ignorés. La plupart des chaînes de caractères (y compris les noms d'option) sont également insensibles à la casse, aux espaces et aux caractères "_".
Périphériques d'entrée
Pour les périphériques d'entrée, le serveur X utilise par défaut le pilote libinput (
xf86-input-libinput
), mais
xf86-input-evdev
et les pilotes associés sont disponibles comme alternative.
[1]
Udev
, qui est fourni comme dépendance de systemd, détectera le matériel et les deux pilotes agiront comme pilote d'entrée à chaud pour presque tous les périphériques, comme défini dans les fichiers de configuration par défaut
10-quirks.conf
et
40-libinput.conf
dans le répertoire
/usr/share/X11/xorg.conf.d/
.
Après le démarrage du serveur X, le fichier journal indiquera quel pilote a été branché à chaud pour les différents périphériques (notez que le nom du fichier journal le plus récent peut varier) :
$ grep -e "Using input driver " Xorg.0.log
Si les deux ne prennent pas en charge un périphérique particulier, installez le pilote nécessaire à partir du groupe
xorg-drivers
. La même chose s'applique si vous voulez utiliser un autre pilote.
Pour influencer le hotplugging, consultez
#Configuration
.
Pour des instructions spécifiques, consultez également l'article
libinput
, les pages suivantes ci-dessous, ou
Fedora:Input device configuration
pour plus d'exemples.
Identification de l'entrée
Consultez
Keyboard input#Identifying keycodes in Xorg
.
Accélération de la souris
Consultez
Mouse acceleration
.
Boutons de souris supplémentaires
Consultez
Mouse buttons
.
Touchpad
Consultez
libinput
ou
Synaptics
.
Écran tactile
Consultez
Touchscreen
.
Paramètres du clavier
Consultez
Configuration du clavier dans Xorg
.
Paramètres du moniteur
Configuration manuelle
Note
Les versions récentes d'Xorg sont auto-configurées, donc la configuration manuelle ne devrait pas être nécessaire.
Si Xorg est incapable de détecter un moniteur ou pour éviter l'auto-configuration, un fichier de configuration peut être utilisé. Un cas courant où cela est nécessaire est un système headless, qui démarre sans moniteur et lance Xorg automatiquement, soit à partir d'une
console virtuelle
à
la connexion
, soit à partir d'un
gestionnaire d'affichage
.
Pour une configuration headless, le pilote
xf86-video-dummy
est nécessaire ;
installez
-le et créez un fichier de configuration, tel que le suivant :
/etc/X11/xorg.conf.d/10-headless.conf
Section "Monitor"
        Identifier "dummy_monitor"
        HorizSync 28.0-80.0
        VertRefresh 48.0-75.0
        Modeline "1920x1080" 172.80 1920 2040 2248 2576 1080 1081 1084 1118
EndSection

Section "Device"
        Identifier "dummy_card"
        VideoRam 256000
        Driver "dummy"
EndSection

Section "Screen"
        Identifier "dummy_screen"
        Device "dummy_card"
        Monitor "dummy_monitor"
        SubSection "Display"
        EndSubSection
EndSection
Moniteurs multiples
Consultez l'article principal
Multihead
pour des informations générales.
Consultez également les instructions spécifiques aux GPU :
NVIDIA (Français)#Multiple monitors
ATI#Multihead setup
.
Plus d'une carte graphique
Vous devez définir le bon pilote à utiliser et mettre l'ID de bus de vos cartes graphiques (en notation décimale).
Section "Device"
    Identifier             "Screen0"
    Driver                 "intel"
    BusID                  "PCI:0:2:0"
EndSection

Section "Device"
    Identifier             "Screen1"
    Driver                 "nouveau"
    BusID                  "PCI:1:0:0"
EndSection
Pour obtenir vos identifiants de bus (en hexadécimal) :
$ lspci | grep -e VGA -e 3D
00:02.0 VGA compatible controller: Intel Corporation HD Graphics 630 (rev 04)
01:00.0 3D controller: NVIDIA Corporation GP107M [GeForce GTX 1050 Mobile] (rev a1)
Les ID de bus sont ici 0:2:0 et 1:0:0.
Taille de l'écran et DPI
Par défaut, Xorg définit toujours le DPI à 96 depuis
2009-01-30
. Une modification a été apportée à la version 21.1 pour permettre une auto-détection correcte de la DPI, mais elle a été
annulée
.
Le DPI du serveur X peut être définie avec l'option de ligne de commande
-dpi
.
Il est utile d'avoir le bon DPI lorsque des détails fins sont nécessaires (comme le rendu des polices). Auparavant, les fabricants essayaient de créer une norme pour 96 DPI (un écran de 10,3 pouces de diagonale serait 800x600, un écran de 13,2 pouces 1024x768). De nos jours, les DPI des écrans varient et peuvent ne pas être égaux horizontalement et verticalement. Par exemple, un écran large LCD 19" de 1440x900 peut avoir un DPI de 89x87.
Pour consulter si la taille de votre écran et le DPI sont correct :
$ xdpyinfo | grep -B2 resolution
Vérifiez que les dimensions correspondent à la taille de votre écran.
Si vous avez des spécifications sur la taille physique de l'écran, vous pouvez les entrer dans le fichier de configuration Xorg afin que le DPI approprié soit calculé (ajustez l'identifiant à votre sortie xrandr) :
Section "Monitor"
    Identifier             "DVI-D-0"
    DisplaySize             286 179    # In millimeters
EndSection
Si vous voulez seulement entrer les spécifications de votre moniteur
sans
créer un xorg.conf complet, créez un nouveau fichier de configuration.  Par exemple (
/etc/X11/xorg.conf.d/90-monitor.conf
) :
Section "Monitor"
    Identifier             "<default monitor>"
    DisplaySize            286 179    # In millimeters
EndSection
Note
Si vous utilisez le pilote propriétaire NVIDIA, vous devrez peut-être mettre
Option "UseEdidDpi" "FALSE"
sous la section
Device
ou
Screen
pour qu'elle prenne effet.
Si vous ne disposez pas de spécifications pour la largeur et la hauteur physiques de l'écran (la plupart des spécifications actuelles ne mentionnent que la taille diagonale), vous pouvez utiliser la résolution native du moniteur (ou le rapport hauteur/largeur) et la longueur diagonale pour calculer les dimensions physiques horizontales et verticales.  En utilisant le théorème de Pythagore sur un écran de 13,3 pouces de diagonale avec une résolution native de 1280x800 (ou un rapport d'aspect de 16:10) :
$ echo 'scale=5;sqrt(1280^2+800^2)'. | bc # 1509.43698
Cela donnera la longueur diagonale du pixel et avec cette valeur vous pouvez découvrir les longueurs physiques horizontale et verticale (et les convertir en millimètres) :
$ echo 'scale=5 ;(13.3/1509)*1280*25.4'. | bc # 286.43072
$ echo 'scale=5 ;(13.3/1509)*800*25.4'.  | bc # 179.01920
Note
Ce calcul fonctionne pour les moniteurs à pixels carrés ; cependant, il existe de rares moniteurs qui peuvent comprimer le rapport d'aspect (par exemple, une résolution d'aspect 16:10 sur un moniteur 16:9). Si tel est le cas, vous devez mesurer manuellement la taille de votre écran.
Réglage manuel du DPI
Note
Bien que vous puissiez définir n'importe quel nombre de ppp et que les applications utilisant Qt et GTK s'adapteront en conséquence, il est recommandé de le définir à 96, 120 (25 % plus élevé), 144 (50 % plus élevé), 168 (75 % plus élevé), 192 (100 % plus élevé), etc. afin de réduire les artefacts de mise à l'échelle pour les interfaces graphiques qui utilisent des bitmaps. La réduction en dessous de 96 dpi peut ne pas réduire la taille des éléments graphiques de l'interface graphique, car le dpi le plus bas pour lequel les icônes sont faites est généralement 96.
Pour les pilotes compatibles avec RandR (par exemple le pilote open source ATI), vous pouvez le définir par :
$ xrandr --dpi 144
Note
Les applications qui respectent ce paramètre ne changeront pas immédiatement. Vous devez les relancer à nouveau.
Pour le rendre permanent, consultez
Autostarting#On Xorg startup
.
Pilote propriétaire NVIDIA
Vous pouvez définir manuellement le DPI en ajoutant l'option sous la section
Device
ou
Screen
:
Option "DPI" "96 x 96"
Mise en garde concernant le réglage manuel du DPI
GTK remplace très souvent le DPI du serveur par la ressource X facultative
Xft.dpi
. Pour savoir si cela se produit dans votre cas, vérifiez avec :
$ xrdb -query | grep dpi
Avec les versions de la bibliothèque GTK depuis 3.16, lorsque cette variable n'est pas explicitement définie, GTK la définit à 96. Pour que les applications GTK obéissent au DPI du serveur, vous pouvez avoir besoin de définir explicitement
Xft.dpi
à la même valeur que le serveur. La ressource
Xft.dpi
est la méthode par laquelle certains environnements de bureau forcent optionnellement le DPI à une valeur particulière dans les paramètres personnels. Parmi ceux-ci figurent
KDE
et
TDE
.
Display Power Management Signaling
DPMS
(Gestion de la puissance d'affichage) est une technologie qui permet d'économiser l'énergie des moniteurs lorsque l'ordinateur n'est pas utilisé. Vous pourrez ainsi faire en sorte que vos moniteurs se mettent automatiquement en veille après une période de temps prédéfinie.
Compositeur
L'extension Composite pour X permet de rendre un sous-arbre entier de la hiérarchie des fenêtres dans un tampon hors écran. Les applications peuvent alors prendre le contenu de ce tampon et faire ce qu'elles veulent. La mémoire tampon hors écran peut être automatiquement fusionnée avec la fenêtre parent, ou fusionnée par des programmes externes appelés gestionnaires de composition. Pour plus d'informations, consultez
Wikipedia:fr:Compositeur (logiciel)
.
Certains gestionnaires de fenêtres (par exemple
Compiz
,
Enlightenment
, KWin, Marco, Metacity, Muffin, Mutter,
Xfwm
) font la composition eux-mêmes. Pour les autres gestionnaires de fenêtres, un gestionnaire composite autonome peut être utilisé.
Liste des gestionnaires de composites
Picom
— Compositeur (un fork de Compton)
https://github.com/yshui/picom
||
picom
Xcompmgr
— Compositeur d'effets de fenêtre
https://gitlab.freedesktop.org/xorg/app/xcompmgr/
||
xcompmgr
steamos-compositor-plus
— Le compositeur de Valve, avec quelques modifications et corrections supplémentaires.
https://github.com/chimeraos/steamos-compositor-plus
||
steamos-compositor-plus
AUR
Trucs et astuces
Automatisation
Cette section liste les utilitaires permettant d'automatiser les entrées clavier/souris et les opérations sur les fenêtres (comme le déplacement, le redimensionnement ou l'élévation).
Outil
Paquet
Manuel
Saisie de
Keysym
Opérations
sur les fenêtres
Note
xautomation
xautomation
xte(1)
Oui
Non
Contient également des outils de lecture d'écran. Ne peut pas simuler
F13
et plus.
xdo
xdo
xdo(1)
Non
Oui
Petit utilitaire X permettant d'effectuer des actions élémentaires sur les fenêtres.
xdotool
xdotool
xdotool(1)
Oui
Oui
Très bogué
et pas en développement actif, par exemple : interpréteur de ligne de commande cassé.
[2]
[3]
xvkbd
xvkbd
AUR
xvkbd(1)
Oui
Non
Clavier virtuel pour Xorg, possède également l'option
-text
pour l'envoi de caractères.
AutoKey
autokey-qt
AUR
autokey-gtk
AUR
documentation
Oui
Oui
Utilitaire de macro et de script puissant, de plus haut niveau, avec des interfaces Qt et Gtk.
Consultez également
Clipboard#Tools
et
un aperçu des outils d'automatisation de X
.
Session X imbriquée
Pour exécuter une session imbriquée d'un autre environnement de bureau :
$ /usr/bin/Xnest :1 -geometry 1024x768+0+0 -ac -name Windowmaker & wmaker -display :1
Ceci lancera une session Window Maker dans une fenêtre de 1024 par 768 dans votre session X actuelle.
Ceci nécessite l'installation du paquet
xorg-server-xnest
.
Une façon plus moderne de faire une session X imbriquée est avec
Xephyr
.
Démarrer une application sans gestionnaire de fenêtres
Consultez
xinit (Français)#Démarrer des applications sans gestionnaire de fenêtres
.
Démarrer des programmes GUI à distance
Consultez l'article principal :
OpenSSH (Français)#Déport d'affichage X11
.
Désactivation et activation à la demande des sources d'entrée
Avec l'aide de
xinput
vous pouvez temporairement désactiver ou activer les sources d'entrée. Cela peut être utile, par exemple, sur les systèmes qui possèdent plus d'une souris, comme les ThinkPads, et vous préférez n'en utiliser qu'une seule pour éviter les clics de souris indésirables.
Installez
le paquet
xorg-xinput
.
Trouvez le nom ou l'ID du périphérique que vous voulez désactiver :
$ xinput
Par exemple, sur un Lenovo ThinkPad T500, la sortie ressemble à ceci :
$ 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)]
Désactivez le périphérique avec
xinput --disable
device
, où
device
est l'ID ou le nom du périphérique que vous souhaitez désactiver. Dans cet exemple, nous allons désactiver le Touchpad Synaptics, avec l'ID 10 :
$ xinput --disable 10
Pour réactiver le périphérique, il suffit de lancer la commande inverse :
$ xinput --enable 10
Alternativement en utilisant le nom du périphérique, la commande pour désactiver le touchpad serait :
$ xinput --disable "SynPS/2 Synaptics TouchPad" (en anglais)
Tuer une application avec un raccourci clavier
Exécutez le script suivant avec un raccourci clavier :
#!/bin/sh
windowFocus=$(xdotool getwindowfocus)
pid=$(xprop -id "$windowFocus" | grep PID)
kill -9 "$pid"
Dépendances :
xorg-xprop
,
xdotool
Consultez également
#Tuer une application visuellement
Bloquer l'accès au TTY
Pour bloquer l'accès au tty lorsque vous êtes dans un X, ajoutez ce qui suit à
xorg.conf
:
Section "ServerFlags"
    Option "DontVTSwitch" "True"
EndSection
Ceci peut être utilisé pour aider à restreindre l'accès à la ligne de commande sur un système accessible à des utilisateurs non fiables.
Empêcher un utilisateur de tuer X
Pour empêcher un utilisateur de tuer X lorsqu'il est en cours d'exécution, ajoutez ce qui suit à
xorg.conf
:
Section "ServerFlags"
    Option "DontZap"      "True"
EndSection
Note
Le raccourci
Ctrl+Alt+Backspace
n'est pas directement ce qui déclenche l'arrêt du serveur X, mais l'action
Terminate_Server
de la keymap. Cette action n'est généralement pas définie par défaut, consultez
Xorg (Français)/Keyboard configuration (Français)#Terminer Xorg avec Ctrl+Alt+Backspace
.
Tuer une application visuellement
Lorsqu'une application se comporte mal ou est bloquée, au lieu d'utiliser
kill
ou
killall
depuis un terminal et de devoir trouver l'ID ou le nom du processus,
xorg-xkill
permet de cliquer sur ladite application pour fermer sa connexion au serveur X. De nombreuses applications existantes s'interrompent effectivement lorsque leur connexion au serveur X est fermée, mais certaines peuvent choisir de continuer.
Xorg sans root
Xorg peut s'exécuter avec les privilèges d'un utilisateur standard au lieu de ceux de root (ce qu'on appelle Xorg «rootless»). Il s'agit d'une amélioration significative de la sécurité par rapport à l'exécution en tant que root. Notez que certains gestionnaires d'affichage populaires ne prennent pas en charge Xorg «rootless» (par exemple
LightDM
ou
XDM
).
Vous pouvez vérifier sous quel utilisateur Xorg est exécuté avec
ps -o user $(pgrep Xorg)
.
Consultez également
Xorg.wrap(1)
,
systemd-logind(8)
,
Systemd (Français)/User (Français)#Xorg comme service utilisateur systemd
,
Fedora:Changes/XorgWithoutRootRights
et
FS#41257
.
Avec xinitrc
Pour configurer Xorg «rootless» en utilisant
xinitrc
:
Exécutez startx comme un sous-processus du shell de connexion ; exécutez
startx
directement et n'utilisez pas
exec startx
.
Assurez-vous que Xorg utilise le terminal virtuel pour lequel les permissions ont été définies, c'est à dire passées par logind dans
$XDG_VTNR
via
.xserverrc
.
Si vous utilisez certains pilotes d'affichage propriétaires, l'
auto-détection
du
kernel mode setting
échouera. Dans ce cas, vous devez définir
needs_root_rights = no
dans
/etc/X11/Xwrapper.config
.
Avec GDM
GDM
exécutera Xorg sans privilèges root par défaut lorsque
kernel mode setting
est utilisé.
Redirection du journal de session
Lorsque Xorg est exécuté en mode sans root, les journaux Xorg sont enregistrés dans
~/.local/share/xorg/Xorg.log
. Cependant, les sorties stdout et stderr de la session Xorg ne sont pas redirigées vers ce journal. Pour réactiver la redirection, démarrez Xorg avec le paramètre
-keeptty
et redirigez les sorties stdout et stderr vers un fichier :
startx -- -keeptty >~/.xorg.log 2>&1
Alternativement, copiez
/etc/X11/xinit/xserverrc
dans
~/.xserverrc
, et ajoutez
-keeptty
. Consultez
[4]
.
Xorg en root
Comme expliqué ci-dessus, il y a des circonstances dans lesquelles Xorg sans root est utilisé par défaut. Si c'est le cas pour votre configuration, et que vous avez besoin d'exécuter Xorg en tant que root, vous pouvez configurer
Xorg.wrap(1)
pour exiger root :
Attention
L'exécution d'Xorg en tant que root pose des problèmes de sécurité. Consultez
#Xorg sans root
pour plus de précisions.
/etc/X11/Xwrapper.config
needs_root_rights = yes
Dépannage
Général
Si un problème survient, consultez le journal stocké soit dans
/var/log/
ou, pour le système X «rootless» par défaut depuis la v1.16, dans
~/.local/share/xorg/
. Les utilisateurs de
GDM
devraient consulter le
journal de systemd
.
[5]
Les fichiers journaux sont de la forme
Xorg.n.log
avec
n
étant le numéro d'affichage. Pour une machine mono-utilisateur avec la configuration par défaut, le journal applicable est fréquemment
Xorg.0.log
, mais autrement cela peut varier. Pour être sûr de choisir le bon fichier, il peut être utile de regarder l'horodatage du démarrage de la session du serveur X et la console à partir de laquelle elle a été lancée. Par exemple :
$ grep -e Log -e tty Xorg.0.log
[    40.623] (==) Log file: "/home/archuser/.local/share/xorg/Xorg.0.log", Time: Thu Aug 28 12:36:44 2014
[    40.704] (--) controlling tty is VT number 1, auto-enabling KeepTty
Dans le fichier journal, soyez à l'affût de toute ligne commençant par
(EE)
, qui représente des erreurs, et aussi
(WW)
, qui sont des avertissements pouvant indiquer d'autres problèmes.
S'il existe un fichier
.xinitrc
vide
dans votre
$HOME
, supprimez-le ou modifiez-le pour que X puisse démarrer correctement. Si vous ne le faites pas, X affichera un écran vide avec ce qui semble être des erreurs dans votre
Xorg.0.log
. En le supprimant simplement, vous obtiendrez un environnement X par défaut.
Si l'écran devient noir, vous pouvez toujours essayer de basculer vers une console virtuelle différente (par exemple
Ctrl+Alt+F6
), et vous connecter aveuglément en tant que root. Vous pouvez le faire en tapant
root
(appuyez sur
Enter
après l'avoir tapé) et en saisissant le mot de passe root (appuyez à nouveau sur
Enter
après l'avoir tapé).
Vous pouvez également tenter de tuer le serveur X avec :
# pkill -x X
Si cela ne fonctionne pas, redémarrez en aveugle avec :
# reboot
Vérifiez les pages spécifiques dans
Category:Input devices
si vous avez des problèmes avec le clavier, la souris, le touchpad, etc.
Recherchez les problèmes courants dans les articles de
ATI
,
Intel
et
NVIDIA
.
Écran noir, Aucun protocole spécifié, Ressource temporairement indisponible pour tous ou certains utilisateurs
X crée des fichiers de configuration et des fichiers temporaires dans le répertoire personnel de l'utilisateur actuel. Assurez-vous qu'il y a de l'espace disque disponible sur la partition où se trouve votre répertoire personnel. Malheureusement, le serveur X ne fournit pas d'informations plus évidentes sur le manque d'espace disque dans ce cas.
Les DRI avec des cartes Matrox ne fonctionnent plus
Si vous utilisez une carte Matrox et que DRI a cessé de fonctionner après la mise à jour vers Xorg, essayez d'ajouter la ligne :
Option "OldDmaInit" "On"
à la section
Device
qui référence la carte vidéo dans
xorg.conf
.
Problèmes de mode frame-buffer
X ne parvient pas à démarrer avec les messages de journal suivants :
(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
Pour corriger cela,
désinstallez
le paquet
xf86-video-fbdev
.
Le programme demande la police '(null)'
Message d'erreur :
unable to load font `(null)'
.
Certains programmes ne fonctionnent qu'avec des polices bitmap. Deux paquets majeurs avec des polices bitmap sont disponibles,
xorg-fonts-75dpi
et
xorg-fonts-100dpi
. Vous n'avez pas besoin des deux ; un seul devrait suffire. Pour savoir lequel serait le meilleur dans votre cas, essayez
xdpyinfo
de
xorg-xdpyinfo
, comme ceci :
$ xdpyinfo | grep resolution
et utilisez ce qui est le plus proche de la valeur indiquée.
Récupération : désactivation d'Xorg avant la connexion à l'interface graphique
Si Xorg est configuré pour démarrer automatiquement et que pour une raison quelconque vous devez l'empêcher de démarrer avant l'apparition du gestionnaire de connexion/affichage (si le système est mal configuré et que Xorg ne reconnaît pas votre souris ou votre clavier, par exemple), vous pouvez accomplir cette tâche avec deux méthodes.
Changer la cible par défaut en
rescue.target
. Consultez
Systemd (Français)#Changer la cible par défaut pour le démarrage
.
Si vous avez non seulement un système défectueux qui rend Xorg inutilisable, mais que vous avez également mis le temps d'attente du menu GRUB à zéro, ou que vous ne pouvez pas utiliser GRUB pour empêcher Xorg de démarrer, vous pouvez utiliser le live CD Arch Linux. Suivez le
guide d'installation
sur la façon de monter et de se connecter en chroot à l'Arch Linux installé. Vous pouvez aussi essayer de basculer vers un autre
tty
avec
Ctrl+Alt
+ touche de fonction (généralement de
F1
à
F7
selon celle qui n'est pas utilisée par X), connectez-vous en tant que root et suivez les étapes ci-dessous.
Selon la configuration, vous aurez besoin de faire une ou plusieurs de ces étapes :
Désactivez
le
gestionnaire d'affichage
.
Désactiver le
démarrage automatique de X
.
Renommez le fichier
~/.xinitrc
ou commentez la ligne
exec
qu'il contient.
Les clients X démarrés avec "su" échouent
Si vous obtenez
Client is not authorized to connect to server
, essayez d'ajouter la ligne :
session optional pam_xauth.so
à
/etc/pam.d/su
et
/etc/pam.d/su-l
.
pam_xauth
définira alors correctement les variables d'environnement et gérera les clés
xauth
.
Le démarrage de X a échoué : Keyboard initialization failed
Si le système de fichiers (en particulier
/tmp
) est plein,
startx
échouera.
/var/log/Xorg.0.log
se terminera par :
(EE) Error compiling keymap (server-0)
(EE) XKB: Could not compile keymap
(EE) XKB: Failed to load keymap. Loading default keymap instead.
(EE) Error compiling keymap (server-0)
(EE) XKB: Could not 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
Libérez de l'espace sur le système de fichiers concerné et X démarrera.
Un écran vert lorsque vous essayez de regarder une vidéo
Votre profondeur de couleur est mal définie. Elle doit être de 24 au lieu de 16, par exemple.
Erreur de SocketCreateListener
Si X se termine avec le message d'erreur
SocketCreateListener() failed
, vous devez peut-être supprimer les fichiers de socket dans
/tmp/.X11-unix
. Cela peut se produire si vous avez précédemment lancé Xorg en tant que root (par exemple pour générer un
xorg.conf
).
Clé MIT-MAGIC-COOKIE-1 invalide lors de l'exécution d'un programme en tant que root
Cette erreur signifie que seul l'utilisateur actuel a accès au serveur X. La solution est de donner l'accès à root :
$ xhost +si:localuser:root
Cette ligne peut également être utilisée pour donner l'accès à X à un utilisateur différent de root.
Xorg-server Fatal server error : (EE) AddScreen/ScreenInit
Si le serveur Xorg ne fonctionne pas de manière aléatoire et que dans le journal Xorg vous consultez :
systemd-logind : failed to take device /dev/dri/card0 : Operation not permitted
...
AddScreen/ScreenInit failed for driver 0
Alors, ce problème peut être causé par
le problème 13943 de systemd
. Configurez le
démarrage précoce de KMS
.
Voir aussi
Xplain
- Explication approfondie du système X Window.
Xorg(1)
xorg.conf(5)
Gentoo:Xorg/Guide#Configuration