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