Chapitre 24. Installer le serveur graphique

1. Installer le serveur graphique et le bureau gnome
2. Manipulations de base
3. La configuration d'un serveur graphique

1. Installer le serveur graphique et le bureau gnome

1.1. Installer le serveur graphique

Installez les paquets nécessaires :

# aptitude install xorg mesa-utils

La denière version du serveur graphique X.Org apporte une fonctionnalité intéressante : il est maintenant capable de déterminer automatiquement une configuration adaptée à votre matériel. Par conséquent, sauf pour des besoins très particuliers, il est inutile de le configurer à la main.

Il est malgré tout possible que vous souhaitiez ajuster quelques paramètres, comme par exemple la sensibilité de la souris. Voici donc des explications sur les concepts utilisés dans la configuration du serveur graphique.

1.2. Installer le bureau et le gestionnaire de fenêtre

Le bureau gnome est constitué de nombreux logiciels. Tous ne vous seront pas nécessairement utiles, mais nous vous proposons d'installer la sélection proposée par Debian, qui occupe à peu près 1 Go, et vous permettra de découvrir de nombreuses possibilités auxquelles vous n'aurez pas forcément pensé. En fait, nous allons exécuter à nouveau tasksel, l'outil de sélection de « tâches » que vous avez déjà vu vers la fin de l'installation :

# tasksel install desktop
[Note] Note

Les paquets à charger pèsent environ 500 Mo (ils sont compressés), donc si vous utilisez un miroir réseau, cela peut prendre un moment. Si vous préférez vous contenter d'un bureau gnome minimal, vous pouvez installer à la place le paquet gnome-core :

        # aptitude install gnome-core
    

1.3. Lancer X !

[Note] Note

Par la suite, le système graphique se lancera tout seul au démarrage, et il vous sera inutile de le lancer à la main.

Maintenant que tout est prêt, vous allez pouvoir lancer le serveur X en tant que simple utilisateur (on ne lance jamais une session graphique en root) avec la commande suivante :

% startx
[Note] Note

Ce qui suit est donné à titre informatif : si vous êtes pressé, vous pouvez passer au chapitre suivant.

2. Manipulations de base

2.1. Zapper entre les consoles et le serveur graphique

  • 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.

  • Pour tuer le serveur graphique, s'il ne fonctionne plus correctement, utilisez la combinaison de touches Ctrl+Alt+Retour arrière (la touche au-dessus d'Entrée).

3. La configuration d'un serveur graphique

Si vous souhaitez peaufiner votre configuration, il vous faut tout d'abord vous renseigner sur votre matériel :

  • votre clavier,

  • votre souris,

  • votre carte graphique,

  • votre écran.

3.1. Se renseigner sur votre carte graphique

La première étape 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 quatre sources d'informations :

  • les références écrites directement sur votre carte graphique, à l'intérieur du chassis de votre ordinateur, si vous pouvez l'ouvrir,

  • la documentation 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 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.

3.2. Comprendre l'accélération 3D sous X

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 : les pilotes graphiques libres déjà installés prennent en charge l'accélération 3D, vous n'avez donc rien à faire !

  • 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 en 2D comme en 3D. Pour les cartes nVidia, le pilote libre marche très bien, de façon plus fiable que le pilote propriétaire, 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 de la plupart des cartes ati.

3.3. Installer un pilote propriétaire

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) :

# aptitude install nvidia-glx

De même, pour les cartes ati, il faut installer le paquet fglrx-driver.

3.4. Le fichier de configuration d'X.Org

La configuration du serveur X est contenue dans le fichier /etc/X11/xorg.conf. Par défaut, ce fichier est absent, et le serveur X construit automatiquement une configuration adaptée au matériel détecté. Vous pouvez cependant préparer votre propre configuration en vous basant sur mon fichier d'exemple :

# cp ~/fichiers-config/xorg.conf /etc/X11/

ou :

% wget http://formation-debian.via.ecp.fr/fichiers-config/xorg.conf
# cp xorg.conf /etc/X11/

Les sections

Le fichier est divisé en plusieurs sections qui ont des liens entre elles :

Figure 24.1. Liens entre les sections

Liens entre les sections

Les liens entre les sections sont assurés par des identifiants appelés Identifier : ainsi, la section InputDevice correspondant au clavier est référencée par son Identifier dans la section ServerLayout. En réalité, ces liens sont souvent omis, et déterminés automatiquement par le serveur X. Si vous modifiez un Identifier qui est référencé quelque part de façon explicite, n'oubliez pas de le modifier également à cet endroit.

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 :

Le clavier

La configuration peut s'effectuer pour un clavier particulier dans une section InputDevice, ou pour tous les claviers dans une section InputClass :

  • L'option XkbModel détermine le modèle physique du clavier (102 touches, 104 touches, 105 touches, Internet Logitec…).

  • L'option XkbLayout permet de préciser la nationalité du clavier (français, américain, etc.).

  • L'option XkbVariant permet de sélectionnerr une variante de la disposition de clavier (standard, dvorak, bépo…).

Section "InputClass"
        Identifier      "Claviers"
        MatchIsKeyboard "true"
        Option          "XkbRules"      "xorg"
        Option          "XkbModel"      "pc105"
        Option          "XkbLayout"     "fr"
	Option		"XkbVariant"	"oss"
EndSection

La souris

Comme pour les claviers, la configuration peut s'effectuer pour une souris particulière dans une section InputDevice, ou pour toutes les souris dans une section InputClass :

  • 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 26).

Cela donne par exemple :

Section "InputClass"
        Identifier      "Souris"
        MatchIsPointer  "true"
        # Décommentez la ligne suivante si vous avez une souris 2 boutons
        #Option          "Emulate3Buttons"       "true"
EndSection

Et pour un pavé tactile :

Section "InputClass"
    Identifier "Pavés tactiles"
    MatchIsTouchpad     "true"
    Driver              "synaptics"
    Option              "TapButton1"    "1"
    Option              "TapButton2"    "2"
    Option              "TapButton3"    "3"

La carte graphique

  • Le paramètre Driver fixe le pilote utilisé par le serveur X pour votre carte graphique. Le nom du pilote est normalement déterminé automatiquement par le serveur graphique au démarrage. 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

L'écran

  • 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. Il est normalement inutile de les préciser, mais cela peut être nécessaire si la meilleure résolution n'est pas utilisée spontanément.

Section "Monitor"
        Identifier      "Generic Monitor"
        HorizSync       28-50
        VertRefresh     43-75
        Option          "DPMS"
EndSection

La résolution

  • 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 aux 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). Il 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

La section ServerLayout

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

La section DRI

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

Fin...

Une fois que le fichier de configuration est au point, vous n'avez plus qu'à enregistrer les changements et à lancer le serveur X :

% startx
[Astuce] Astuce

Si vous souhaitez faire des essais avec diverses configurations, vous pouvez toujours fermer le serveur X en utilisant le menu Système > Fermer la session.