Activer XDMCP sur Ubuntu Lucid 10.04

Cette astuce fonctionne peut être avec les versions suivantes, mais je ne l’ai pas testée. A confirmer.

Si vous avez besoin d’utiliser XDMCP sur votre réseau, vous constaterez qu’avec la « nouvelle » version de GDM, il n’est plus possible de l’activer facilement ((en tout cas, pas aussi facilement qu’avant)).

Or, il suffit de quelques manipulations pour la remettre en place.

Paramétrer le serveur XDMCP

Tout d’abord, il faut créer le fichier /etc/gdm/custom.conf qui va enregistrer les options de GDM, et en particulier celles concernant XDMCP.

Remplissez le avec ceci:

[daemon]
 User=gdm
 Group=gdm
[security]
 DisallowTCP=true
[xdmcp]
 Enable=true
 DisplaysPerHost=2
 HonorIndirect=false
 MaxPending=4
 MaxSessions=16
 MaxWait=30
 MaxWaitIndirect=30
 PingIntervalSeconds=60
 Port=177
[greeter]
[chooser]
 Multicast=false
[debug]
 Enable=false

Il suffit ensuite de redémarrer le service GDM pour activer le XDMCP.

service gdm restart

Cependant, si vous avez désactivé IPV6 sur votre réseau, cela ne fonctionnera pas, puisque XDMCP écoute par défaut en IPV6 désormais. Vous pouvez le voir en root avec la commande netstat:

root@test4:/home/manu# netstat -putan|grep 177
udp6       0      0 :::177        :::*        646/gdm-binary

Il faut alors désactiver IPV6 sur l’ordinateur qui diffusera son affichage, par exemple en le désactivant au niveau du noyau.

On peut le faire en rajoutant une option au fichier de configuration de grub. Modifiez les fichier /etc/default/grub pour ajouter l’option « ipv6.disable=1 »

GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1 quiet splash"

Reconstruisez le fichier de configuration de grub par « sudo update-grub » puis redémarrez votre ordinateur. Netstat vous indique alors que XDMCP écoute en IPV4 ((notez le 6 qui a disparu et la notation des adresses))

root@test4:/home/manu# netstat -putan|grep 177
udp       0      0 0.0.0.0:177        0.0.0.0*        658/gdm-binary

Utiliser le client XDMCP

On peut utiliser Xming depuis Windows, mais depuis Linux, il est plus simple d’utiliser tsclient. Dans la liste des protocoles, si vous ne voyez pas XDMCP, c’est qu’il vous faut l’installer le paquet xnest

sudo apt-get install xnest

tsclient avec XDMCPEnsuite, pour la connexion, c’est du classique.

Un client XDMCP en console

Si vous désirez lancer une session XDMCP systématiquement, il est inutile se charger gnome ou un gestionnaire de fenêtres simplement pour lancer tsclient puis votre session XDMCP. Il est possible de lancer celle ci directement.

Désactivez le lancement de GDM, puis logguez vous sur l’ordinateur et tapez la commande suivante:

/usr/X11R6/bin/X -query 192.168.1.2

où 192.168.1.2 est le serveur sur lequel vous avez activé XDMCP.

Sources:

Tftpd-hpa sur Lucid (erreur TFTP open timeout)

La mise à jour du programme tftpd-hpa sur lucid modifie son fichier de configuration par défaut. Si vous utilisez des clients légers avec LTSP, vous vous retrouvez avec des clients qui s’arrêtent à l’erreur PXE: TFTP open timeout juste après avoir obtenu leur adresse IP du dhcp.

Avant, votre fichier de configuration était ainsi:

root@ltsp:#cat /etc/default/tftpd-hpa
#Defaults for tftpd-hpa
RUN_DAEMON="yes"
OPTIONS="-l -s /var/lib/tftpboot"

Or, maintenant, le fichier se présente ainsi:

# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/srv/tftp"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS=""

Du coup, le serveur ne se lance plus (il n’apparait pas dans les processus) même si vous avez un message disant qu’il est déjà en cours de fonctionnement lorsque vous tentez de le relancer.

Il suffit alors de modifier votre fichier de la manière suivante:

# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/var/lib/tftpboot"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="--secure"

Relancez ensuite votre serveur tftpd et vos clients devraient démarrer.

Si vous avez utilisé des outils qui paramètrent automatiquement le fichier de configuration avec l’ancienne version, réinstallez le paquet pour obtenir le nouveau fichier de configuration:

sudo apt-get install --reinstall tftpd-hpa

puis effectuez manuellement les modifications.

Désactiver le lancement de GDM sur Lucid

Sur l’une de mes machine, destinée à un usage spécifique dont je parlerais plus tard, j’avais besoin d’avoir une interface graphique pour l’installation et le réglage d’un logiciel particulier.

Mais une fois celui ci configuré, je souhaitais que GDM ne se lance plus, sauf à la demande. J’ai donc installé une version « desktop » puis j’ai cherché à désactiver GDM.

Or, si cela était évident (ou du moins connu) dans les versions précédentes, en supprimant le lien de lancement dans /etc/rc2.d ou avec update-rc.d, avec upstart c’est désormais différent.

Les programmes lancés au démarrage sont situés dans des fichiers de configuration placés dans /etc/init. Celui qui nous intéresse est gdm.conf.

Il faut modifier le fichier de la manière suivante:

de

# gdm - GNOME Display Manager
#
# The display manager service manages the X servers running on the
# system, providing login and auto-login services
 
description    "GNOME Display Manager"
author        "William Jon McCann &lt;<a class="linkification-ext" title="Linkification: mailto:mccann@jhu.edu" href="mailto:mccann@jhu.edu">mccann@jhu.edu</a>&gt;"
 
start on (filesystem
          and started dbus
          and (drm-device-added card0 PRIMARY_DEVICE_FOR_DISPLAY=1
          or stopped udevtrigger))
stop on runlevel [016]
 
emits starting-dm
 
env XORGCONFIG=/etc/X11/xorg.conf
...

à

# gdm - GNOME Display Manager
#
# The display manager service manages the X servers running on the
# system, providing login and auto-login services
 
description    "GNOME Display Manager"
author        "William Jon McCann &lt;<a class="linkification-ext" title="Linkification: mailto:mccann@jhu.edu" href="mailto:mccann@jhu.edu">mccann@jhu.edu</a>&gt;"
 
start on []
#start on (filesystem
#          and started dbus
#          and (drm-device-added card0 PRIMARY_DEVICE_FOR_DISPLAY=1
#          or stopped udevtrigger))
stop on runlevel [016]
 
emits starting-dm
 
env XORGCONFIG=/etc/X11/xorg.conf
...

Relancer ensuite l’ordinateur, GDM ne se lancera plus au démarrage, et vous pourrez alors vous connecter sur les consoles.

Ce n’est pas une astuce exclusive, mais j’ai perdu assez de temps à chercher la réponse que je le note pour savoir où le retrouver.

Ne vous affolez pas parce que vous serez en mode texte, vous verrez qu’on arrive à faire des choses sympas ensuite.

Par exemple, vous pouvez vous identifier avec votre mot de passe et lancer la commande startx pour lancer votre environnement graphique.

Dans un prochain article, nous verrons qu’il y a mieux…