L'installation du serveur graphique n'est pas une étape facile, surtout si vous avez une carte graphique dernier cri ou exotique. Pour que le serveur graphique puisse se lancer, il faut qu'il connaisse les caractéristiques de :
votre clavier,
votre souris,
votre carte graphique (c'est le plus difficile),
votre écran.
La première étapez consiste à se renseigner sur votre carte graphique. Si vous connaissez le modèle exact de votre carte graphique, vous pouvez passer au paragraphe suivant. Sinon, il va falloir partir aux renseignements pour connaître le modèle exact de votre carte graphique. Vous avez trois sources d'informations :
la documentation et/ou la facture de votre ordinateur,
la commande lspci sous Linux, qui liste les périphériques PCI et AGP. Vous devez avoir un paragraphe qui commence par "VGA compatible controller", et à la suite le nom du modèle de votre carte graphique.
si vous avez encore un Windows installé sur votre ordinateur, regardez dans le Gestionnaire de périphériques, dans la section Carte Graphique, pour avoir le nom de votre carte.
Trois cas se présentent :
Votre carte graphique ne possède pas d'accélération 3D matérielle : vous n'êtes pas concerné par ce paragraphe !
Vous avez une carte graphique possédant une puce de marque 3Dfx, Intel, Matrox ou SiS : pour tirer parti de leur accélération 3D matérielle, vous devez utiliser le DRM (Direct Rendering Manager) et le DRI (Direct Rendering Infrastructure).
Vous avez une carte ATI ou nVidia. Vous avez alors le choix entre deux pilotes : un pilote libre inclus dans X.org, et un pilote propriétaire. Les pilotes propriétaire fonctionnent parfaitement, en 2D comme en 3D. Pour les cartes nVidia, le pilote libre marche très bien, mais ne tire pas parti de l'accélération matérielle 3D de la carte. Pour les cartes ATI, le pilote libre sait utiliser les capacités 3D des cartes ATI qui ne sont pas trop récentes.
Installez les paquets nécessaires :
#
apt-get install xorg
Il vous demande alors les modes vidéo utilisés par le serveur X : cochez les modes de résolution que vous pouvez et souhaitez utiliser.
Si vous souhaitez utiliser le pilote propriétaire nVidia, installez le paquet nvidia-glx. Vous devez pour cela avoir activé les dépôts de paquets non libres (Le système de gestion des paquets Debian) :
#
apt-get install nvidia-glx
De même, pour les cartes ATI, il faut installer le paquet fglrx-driver.
Vous allez maintenant configurer le serveur X plus finement,
avec debconf : il va vous poser une série de
questions puis générer le fichier de configuration de X.org
/etc/X11/xorg.conf
:
#
dpkg-reconfigure xserver-xorg
Il commence par vous demander de sélectionner le pilote de votre carte graphique. C'est là où il ne faut pas se tromper ! Choisissez le driver supportant votre carte graphique dans la liste qu'il vous propose. Ce n'est pas toujours évident... En fait, chaque pilote supporte plusieurs modèles de cartes graphiques, et le nom du driver est généralement le nom du constructeur de la puce graphique, ou un mix entre le nom du constructeur de la puce et le nom du modèle de la carte.
Par exemple :
si vous avez une carte nVidia et que vous voulez utiliser le pilote libre, sélectionnez nv,
si vous avez une carte nVidia et que vous voulez utiliser le pilote propriétaire, sélectionnez nvidia,
si vous avez une carte ATI et que vous voulez utiliser le pilote libre, sélectionnez ati,
si vous avez une carte ATI et que vous voulez utiliser le pilote propriétaire, sélectionnez fglrx,
Si vous avez une carte graphique non supportée par X.org ou que vous ne trouvez pas le driver qui correspond à votre carte graphique, sélectionnez le driver vesa : il marche avec quasiment toutes les cartes graphiques.
Ensuite, il vous demande un identifiant : on écrit généralement le nom de sa carte graphique.
Entrez l'identifiant du bus de la carte vidéo : si vous n'avez qu'une seule carte vidéo, vous pouvez laisser le tel quel.
Entrez la quantité de mémoire que va utiliser votre carte vidéo : elle est normalement détectée automatiquement, vous pouvez laisser le champ vide.
Utiliser l'interface framebuffer du noyau ? : répondez Non.
Détecter automatiquement la disposition du clavier ? : répondez Non.
Disposition du clavier : laissez fr.
Jeu de définitions XKB à utiliser : laissez xorg.
Modèle de clavier : laissez pc105.
Variant du clavier : laissez latin9.
Options du clavier : : laissez le champ vide.
Port de branchement de votre souris
: laissez /dev/input/mice
.
Protocole de gestion de votre souris :
ImPS/2
convient pour la plupart des
souris.
Emuler une souris 3 boutons ? Si vous avez une souris 2 boutons, répondez Oui ; si vous avez une souris avec 3 boutons ou plus, répondez Non.
Modules du serveur X.org à charger par défaut : ne modifiez pas la liste..
Mettre une section "Files" de référence dans la configuration ? : répondez Oui.
Détecter automatiquement l'écran ? répondez Oui
Choisissez ensuite un identifiant pour votre moniteur (on met en général le nom de modèle).
Modes vidéo utilisés par le serveur X : cochez toutes les résolutions supportées par votre écran ; il choisira la meilleur résolution possible parmi les résolutions sélectionnées (donc a priori la plus élevées de celles que vous avez sélectionnées).
Ensuite viennnent les questions sur les réglages de l'écran. Si vous ne connaissez pas les spécifications techniques de votre écran, choisissez le mode Simple. Si vous choisissez le mode Expert, il faut connaître précisement les caractéristiques de votre écran et notamment les fréquences de rafraîchissement verticales et horizontales (c'est normalement écrit dans le manuel de votre écran).
Inscrire les plages de fréquence dans la configuration ? : répondez Oui
Profondeur de couleur par défaut : sauf si vous avez une vieille carte graphique avec une mémoire vidéo limitée, sélectionnez 24 bits.
Pour que le serveur X puisse se lancer, il faut avoir un bureau, ou au minimum un gestionnaire de fenêtre.
Le bureau Gnome contient énormément de programmes, parmi lesquels figurent des jeux ou des outils qui ne vous serviront pas nécessairement. Plutôt que d'installer un bureau Gnome complet, nous allons installer les programmes les plus importants, qui suffisent à obtenir un environnement agréable :
#
apt-get install gdm-themes gnome-themes-extras xscreensaver gdm evince \ gnome-media gnome-themes gnome-volume-manager libgnomevfs2-extra \ sound-juicer totem totem-gstreamer gnome-core gnome-system-tools \ gnome-utils
Maintenant que tout est prêt, vous allez pouvoir lancer le serveur X en tant que simple utilisateur (on ne lance jamais un server graphique en root) avec la commande suivante :
%
startx
Il y a trois scénarios possibles :
Votre serveur X plante.
Le serveur X se lance, et vous arrivez dans un beau bureau Gnome... mais la souris devient folle dès que vous la bougez. Pour fermer le serveur graphique, utilisez la combinaison de touches Ctrl-Alt-Backspace.
Le serveur X se lance, et vous arrivez dans un beau bureau Gnome avec une souris qui bouge normalement... Victoire ! Vous pouvez passer directement au chapitre suivant Le bureau Gnome si vous êtes pressé.
À chaque lancement ou tentative de lancement
du serveur X, celui-ci produit un fichier de log
/var/log/Xorg.0.log
qui contient tous les
messages qui ont défilé très vite sur votre écran quand vous avez lancé
le serveur graphique et que vous n'avez pas pu lire.
Ce fichier va vous permettre de comprendre les problèmes de votre serveur X et éventuellement de vérifier qu'il marche de façon optimale. Il faut donc en particulier consulter attentivement ce fichier après chaque plantage.
Affichez /var/log/Xorg.0.log
(avec
most). Après les messages au début du fichier,
vous trouvez des lignes qui commencent par des sigles qui ont leur
importance :
(**) informe de quelque chose lu dans le fichier de configuration,
(==) informe d'un paramètre mis par défaut,
(II) correspond à un message d'information,
(WW) correspond à un avertissement,
(EE) correspond à une erreur.
Vous devez donc vous concentrer tout particulièrement sur les lignes qui commencent par (WW) ou (EE) et essayer de comprendre l'origine du problème. C'est généralement la configuration de la souris ou de la carte graphique qui pose problème. Il ne faut pas trop se préoccuper des messages d'avertissement qui concernent les polices (en anglais fonts) et l'APM, il ne sont jamais à l'origine de plantages ou de problèmes avec la souris !
Une fois que vous avez une petite idée de la cause du mauvais fonctionnement du serveur X, relancez la procédure de configuration :
#
dpkg-reconfigure xserver-xorg
Si vous avez un serveur X qui marche mais une souris folle dès que vous la bougez, vous n'aurez probablement qu'à changer le protocole de la souris.
Puis testez de nouveau le fonctionnement du serveur X :
%
startx
Si vous ne parvenez pas à faire marcher votre serveur graphique après plusieurs tentatives infructueuses de lancement et reconfiguration, lisez attentivement la section suivante...
La configuration du serveur X est contenue dans le fichier
/etc/X11/xorg.conf
. Vous pouvez éditer ce
fichier pour modifier à la main la configuration de votre serveur
X.
Le fichier est divisé en plusieurs sections, qui ont des liens entre-elles :
Les liens entre les sections sont assurés par des identifiants appelés Identifier. Si vous modifiez un Identifier, n'oubliez pas de le modifier à deux endroits : là où il est défini et là où il est appelé (cf les liens sur le schéma précédent) !
Il existe aussi des sections indépendantes des autres :
une section Files qui contient les chemins des polices de caractères,
une section optionnelle ServerFlags qui peut contenir un certain nombre d'options,
une section Module qui contient la liste des modules à charger,
une section DRI qui contient les permissions pour l'utilisation du DRI (Direct Rendering Infrastructure).
Nous vous précisons ci-dessous les paramètres importants dans chaque partie, en suivant l'ordre du fichier :
La section Files contient les chemins vers les polices de caractères. Supprimez la ligne correspondant au serveur de polices local ainsi que la ligne correspondant aux polices de l'alphabet cyrillic (nous n'avons pas installé les paquets correspondants, car nous n'en avons pas besoin). Pour avoir par défaut des polices de 75dpi plutôt que des polices de 100dpi (100dpi est un peu trop gros à mon goût...), mettez les lignes contenant 75dpi avant les lignes contenant 100dpi. La section devient alors :
Section "Files" FontPath "/usr/share/fonts/X11/misc" FontPath "/usr/X11R6/lib/X11/fonts/misc" FontPath "/usr/share/fonts/X11/75dpi/:unscaled" FontPath "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled" FontPath "/usr/share/fonts/X11/100dpi/:unscaled" FontPath "/usr/X11R6/lib/X11/fonts/100dpi/:unscaled" FontPath "/usr/share/fonts/X11/Type1" FontPath "/usr/X11R6/lib/X11/fonts/Type1" FontPath "/usr/share/fonts/X11/75dpi" FontPath "/usr/X11R6/lib/X11/fonts/75dpi" FontPath "/usr/share/fonts/X11/100dpi" FontPath "/usr/X11R6/lib/X11/fonts/100dpi" ... EndSection
Normalement, si vous avez suivi mes consignes lors de la configuration avec debconf, vous n'avez pas besoin de modifier la section Modules.
L'option XkbLayout permet de préciser la nationalité du clavier (français, américain, etc...).
L'option XkbModel fixe le nombre de touches du clavier (pc102, pc104,...).
Section "InputDevice" Identifier "Generic Keyboard" Driver "keyboard" Option "CoreKeyboard" Option "XkbRules" "xorg" Option "XkbModel" "pc105" Option "XkbLayout" "fr" Option "XkbVariant" "latin9" EndSection
Une seule section suffit pour faire fonctionner plusieurs souris. Ainsi, si vous utilisez une souris d'appoint sur un portable, il vous suffit de la brancher pour pouvoir l'utiliser.
L'option Device définit le périphérique correspondant à la souris.
L'option Protocol définit le langage parlé par la souris.
L'option Emulate3Buttons doit être activée si vous avez une souris 2 boutons et que vous voulez pouvoir faire du copier-coller sous X quand même (ce sera expliqué au chapitre Les bases de Linux en mode graphique).
Cela donne par exemple :
Section "InputDevice" Driver "mouse" Option "CorePointer" Option "Device" "/dev/input/mice" Option "Protocol" "ExplorerPS/2" # Décommentez la ligne suivante si vous avez une souris 2 boutons Option "Emulate3Buttons" "true" EndSection
Le paramètre Driver
fixe le pilote utilisé par le serveur X pour votre carte
graphique. Le nom du driver correspond exactement à la liste
présente dans debconf à l'étape de
sélection du driver de la carte graphique. Vous trouverez des
informations intéressantes à ce sujet dans le répertoire
/usr/share/doc/xserver-xorg
.
Section "Device" Identifier "Generic Video Card" Driver "nvidia" EndSection
Le paramètre facultatif HorizSync précise la plage des fréquences de synchronisation horizontale en kHz.
Le paramètre facultatif VertRefresh précise la plage des fréquences de rafraîchissement verticale en Hz.
L'option DPMS active l'option d'économie d'énergie si vous avez un écran qui supporte la norme DPMS.
Toutes ces informations techniques sont normalement écrites dans le manuel de l'écran.
Section "Monitor" Identifier "Generic Monitor" HorizSync 28-50 VertRefresh 43-75 Option "DPMS" EndSection
Le paramètre Device assure le lien avec la section concernant la carte graphique : il doit être exactement identique aux paramètres Identifier de la section Device.
Le paramètre Monitor assure le lien avec la section concernant l'écran : il doit être exactement identique au paramètres Identifier de la section Monitor.
Le paramètre DefaultDepth définit sur combien de bits sont codées les couleurs (1 bit = noir et blanc, 8 bits = 256 couleurs, 16 bits = 65536 couleurs, 24 bits = 16 millions). Elle renvoie à une des sous sections suivantes.
Il y a ensuite un certain nombre de sous-sections. Seule la section dont le paramètre Depth est égale au paramètre DefaultDepth est prise en compte par le serveur X.
Les paramètres des sous-sections sont les suivants :
Le paramètre Depth définit sur combien de bits sont codées les couleurs.
Le paramètre Modes définit une liste de résolutions de l'écran. Le Serveur X va choisir la plus haute résolution possible dans la liste.
Section "Screen" Identifier "Default Screen" Device "Generic Video Card" Monitor "Generic Monitor" DefaultDepth 24 SubSection "Display" Depth 8 Modes "1024x768" "800x600" "640x480" EndSubSection SubSection "Display" Depth 16 Modes "1024x768" "800x600" "640x480" EndSubSection SubSection "Display" Depth 24 Modes "1024x768" "800x600" "640x480" EndSubSection EndSection
Elle définit l'agencement de votre bureau. Cela peut être utile si vous utilisez plusieurs écrans, claviers et souris... :
Le paramètre Screen assure le lien avec la section concernant la résolution : il doit être exactement identique au paramètres Identifier de la section Screen.
Le paramètre InputDevice assure le lien avec le clavier et la souris : il doit donc être présent deux fois.
On peut éventuellement rajouter le paramètre OffTime qui fixe le nombre de minutes d'inactivité au bout duquel un écran DPMS se met en mode d'économie d'énergie. Pour que ça marche, il faut également avoir activé l'option DPMS dans la section Monitor.
Cela donne par exemple :
Section "ServerLayout" Identifier "Default Layout" Screen "Default Screen" InputDevice "Generic Keyboard" InputDevice "Configured Mouse" Option "OffTime" "20" EndSection
Cette section permet de fixer les permissions pour l'utilisation du DRI. Si vous n'utilisez pas le DRI (parce que vous avez une carte nVidia par exemple), alors ne mettez pas cette section dans votre fichier de configuration. Avec la section d'exemple ci-dessous, vous donnez le droit d'utiliser DRI à tous les utilisateurs du système :
Section "DRI" Mode 0666 EndSection
Pour passer du serveur graphique à la console numéro X, utilisez la combinaison de touches Ctrl-Alt-FX.
Pour passer de la console X à la console Y, utilisez la combinaison habituelle Alt-FY.
Pour revenir sur le serveur graphique, utilisez la combinaison de touches Alt-F7.