Cette section porte sur la configuration de xdm afin qu'une invite de
connexion soit disponible sur les terminaux X, et que le retour à celle-ci
soit réalisé quand un utilisateur se déloge. Le programme xdm est
l'équivalent pour TX des programmes de connexion sur consoles texte. Il est
normalement inclus dans toutes les distributions de Linux.
Les fichiers de configuration de xdm se trouvent dans
/usr/X11R6/lib/X11/xdm (/usr/X11R6 peut être un lien sur
/usr/X11). Le principal fichier de configuration est
xdm-config. Vous devez y trouver, parmi d'autres, les lignes :
DisplayManager._0.authorize: true
DisplayManager._0.setup: /usr/X11R6/lib/X11/xdm/Xsetup_0
DisplayManager._0.startup: /usr/X11R6/lib/X11/xdm/GiveConsole
DisplayManager._0.reset: /usr/X11R6/lib/X11/xdm/TakeConsole
Ces lignes indiquent les fichiers contrôlant l'écran quand X est lancé sur la machine Linux elle-même. Pour la gestion du TX, nous devons ajouter les lignes :
DisplayManager.murmure_0.authorize: true
DisplayManager.murmure_0.setup: /usr/X11R6/lib/X11/xdm/Xsetup_murmure
DisplayManager.murmure_0.startup: /usr/X11R6/lib/X11/xdm/Xstartup
DisplayManager.murmure_0.reset: /usr/X11R6/lib/X11/xdm/Xreset
Remarquez que murmure_0 est la notation xdm de
murmure:0, tout comme _0 est l'équivalent de :0.
Remarquez aussi que GiveConsole a été remplacé par
Xstartup, qui dans mon cas est un script ne faisant rien, et que
TakeConsole a été remplacé par Xreset, qui est lui aussi
un script ne faisant rien.
Ces fichiers contrôlent à la fois la "possession" de la console quand X
est utilisé directement sur la machine Linux, et qu'il n'y ait pas de
problème d'accès à la console uniquement parce qu'un TX est connecté à la
machine.
Ces fichiers de démarrage lancent différents programmes avant que l'invite
de connexion soit placée à l'écran. C'est est l'endroit indiqué pour vous dire
d'utiliser xv ou un programme similaire afin de placer une image en
fond d'écran. Dans ce cas, copier le fichier Xsetup_0 en tant que
Xsetup_murmure et modifier ce dernier.
Comme cette question réapparait encore et encore : une méthode simple de mettre une image en fond d'écran est de mettre la ligne :
nice xv -root -quit -rmode 5 <fichier_image> &
ou quelque chose du même style dans le fichier de démarrage.
fichier_image sera alors affiché en fond d'écran derriére l'invite
de connexion de xdm. Notez que certains TX renverront un message
d'erreur si cette image est trop grande.
Le fichier Xaccess permet de contrôler l'accès à la machine.
Généralement vous n'aurez pas à le modifier. Xaccess permet aussi
de donner à l'utilisateur à choisir dans une liste de machine
(chooser) si plusieurs machines du réseau acceptent l'accès depuis
un TX.
Le fichier Xresources permet de fixer la taille, la forme et le
message de bienvenue de la fenêtre de l'invite de connexion. Ainsi en remplaçant
la ligne :
DisplayManager*resources: /usr/X11R6/lib/X11/xdm/Xresources
par les lignes
DisplayManager._0.resources: /usr/X11R6/lib/X11/xdm/Xres_0
DisplayManager.murmure_0.resources: /usr/X11R6/lib/X11/xdm/Xres_mu_0
où Xres_mu_0 est le fichier de ressources pour le TX
murmure et Xres_0, celui pour la console de la machine
Linux. Vous pourrez donner des valeurs différentes pour le TX et pour la machine
sous Linux.
Normalement vous ne devriez pas avoir à modifier le fichier
Xsession.
La configuration du fichier Xservers est aussi presque triviale. Au
pire vous aurez à décommenter (cas de la distribution Slackware 2.2.0.1) la
ligne :
:0 local /usr/X11R6/bin/X
ou une ligne ayant le même effet. Cela permet le démarrage automatique du
serveur X sur la machine hôte nunux lors de l'appel de
xdm. Si vous commentez cette ligne, X ne sera pas lancé sur la
machine nunux lors d'un appel à xdm. C'est le cas si
vous désirez que X ne soit utilisé que sur les TX et non sur la machine
hôte. Dans ce cas, vous pourrez démarrer X sur la machine nunux par
la commande startx et pour le temps que vous voudrez, sans que cela
ait d'incidence sur le TX.
Si votre TX n'a pas XDMCP, vous devrez alors ajouter une ligne
telle que :
murmure:0 foreign
XDMCP est un protocole standardisé qui, par exemple, laisse les
TXs discuter avec leurs hôtes. Si votre TX supporte XDMCP vous ne
devez pas ajouter cette ligne. Ceci laisserait pensé à xdm qu'un
TX ne comprend pas XDMCP, alors qu'au même moment celui-ci tenterait
d'utiliser ce protocole pour se connecter. Cela peut conduire à de nombreux
effets fortement désagréables comme la lutte de deux xdm pour la
prise de contrôle.
Vous pouvez utiliser les entrées du fichier xdm-config même s'il
n'y a pas de ligne dans Xservers pour le TX. Vous pourrez toujours
personnaliser l'invite de connexion, etc., si le TX utilise XDMCP.
Afin que xdm démarre à chaque lancement de Linux, vous pouvez
ajouter la ligne :
/usr/bin/X11/xdm
dans /etc/rc.d/rc.local. Certains démarrent xdm par le
biais du fichier /etc/inittab en remplaçant :
# Default runlevel.
id:3:initdefault:
(première entrée du fichier) par
# Default runlevel.
id:5:initdefault:
Dans tous les cas vous devez avoir xdm dans la liste des processus
actifs après le redémarrage.
(Cette importante partie sera développée ultérieurement, nous travaillons dessus.)
Pour savoir si un utilisateur peut accéder à l'environnement d'un TX depuis
la machine nunux, connectez vous (en autre chose que root)
et lancez la commande :
xsetroot -solid white -display murmure:0 &
ou
xterm -display murmure:0 &
Essayez cela quand quelqu'un est connecté sur le TX et qu'il n'y a que
l'invite de connexion de xdm. Suivant votre position, la
possibilité d'accès au TX depuis une session sur la console sera plus ou
moins une possibilité inattendue qu'un bug.
Chapitre suivant, Chapitre Précédent
Table des matières de ce chapitre, Table des matières générale
Début du document, Début de ce chapitre