10.8. Problèmes classiques rencontrés

Il est possible que vous rencontriez quelques problèmes au lancement de XWindow après avoir modifié sa configuration. Ces problèmes peuvent aller du blocage complet de la machine à l'impossibilité de lancer XWindow.

D'une manière générale, il est recommandé de ne pas modifier la configuration dans le niveau d'exécution de XWindow (3, 4 ou 5 selon les distributions). En effet, dans ces niveaux, xdm relance automatiquement le serveur X dès qu'il détecte sa terminaison. Si le serveur X ne peut pas se lancer, votre ordinateur se bloquera dans une boucle infinie, avec en prime deux changements de mode graphique à chaque itération (ce qui peut endommager sérieusement votre moniteur). Si cela vous arrivait, vous n'auriez plus qu'à tenter le redémarrage de la machine en basculant rapidement sur un terminal (avec CTRL+ALT+F1 suivi de CTRL+ALT+DEL. Faites-le très rapidement, avant que xdm n'ait le temps de tenter un redémarrage du serveur X !), et à redémarrer en indiquant le niveau d'exécution 2 à l'amorçage du noyau. Par conséquent, essayez vos changement de configuration dans le niveau d'exécution 2 si possible, et faites vos tests avec la simple commande startx.

Des erreurs un peu plus techniques peuvent provenir de la configuration réseau elle-même (n'oubliez pas que XWindow est un système graphique basé réseau). Les erreurs les plus effroyables sont sans doute les erreurs du type « _X11TransSocketINETConnect: Can't connect: errno = n », où n est un code d'erreur numérique. Typiquement, cette erreur signale un problème dans la configuration réseau. Les deux erreurs les plus classiques sont l'erreur 101, qui signale que la machine indiquée dans le display n'a pas pu être contactée, et l'erreur 111, qui signale que cette machine est bien accessible par le réseau, mais que le serveur X ne s'y trouve pas.

En général, vous devrez vérifier toute votre configuration réseau si vous rencontrez des erreurs 101, et le problème n'est certainement pas spécifique à XWindow. Vous pouvez également vérifier la validité de votre display, car il se peut qu'il désigne une machine inaccessible sur votre réseau (ou que la résolution de nom ait échoué pour cette machine).

Pour ce qui est de l'erreur 111, c'est beaucoup plus simple. Dans la grande majorité des cas, le serveur X désigné n'existe tout simplement pas. Il faut donc s'assurer que le serveur X en charge de gérer le display indiqué dans la variable d'environnement DISPLAY est bien lancé sur la machine désignée.

Enfin, lorsqu'une application cliente refuse de démarrer en affichant un message d'erreur « Can't open display: », c'est tout simplement que la variable d'environnement DISPLAY n'a pas été précisée, et que l'option en ligne de commande -display n'a pas été utilisée non plus. L'application ne sait donc tout simplement pas à quel display se connecter. Si le display a bien été défini, mais que le message « Can't open display:xxx » est complété du message « Connection to "xxx" refused by server » ou « Client is not authorized to connect to Server », c'est que le client a été lancé dans un autre compte utilisateur que le compte que vous utilisez couramment, et que ce compte ne dispose pas des droits nécessaires pour accéder à ce display. Vous devez dans ce cas donner l'accès à votre display au compte utilisateur sous lequel vous lancez le client.