Ubuntu/KDE РD̩port des fen̻tres sur un serveur X

Le serveur X, c’est le serveur graphique traditionnel sous UNIX/Linux.

Il permet nativement la « transparence réseau », c’est à dire qu’une fenêtre (graphique) peut être indifféremment affichée localement sur l’écran ou affichée via le réseau sur une autre machine. C’est le protocole X qui permet ça, du nom du serveur.
Par défaut, et suite à de nombreux problèmes de sécurités, cette facilité avait été désactivée sur l’ensemble des distributions Linux.

Pour les habitués du monde Microsoft, c’est difficile à comprendre, il n’y a pas d’équivalent, sauf à émuler un serveur X justement…
Ce n’est pas la totalité de l’écran que l’on déporte (MSTS/TerminalServer/RDP, VNC, PCanywhere, etc…) mais juste un déport fenêtre par fenêtre avec l’habillage du serveur X qui affiche la fenêtre (local ou distant donc).

On peut donc tout à fait faire afficher la fenêtre d’un programme à interface graphique sur un serveur qui ne dispose pas de serveur X lancé, voire qui ne dispose pas de carte graphique du tout. On déporte l’affichage de ce programme vers une station qui a un serveur X lancé et celui-ci s’affiche comme si il semblait tourner sur cette station. Mais il tourne bien sur le serveur, le programme :-)

Et ça marche quelque soit la distribution Linux ou même quelque soit l’UNIX derrière. Je l’ai testé à une époque entre Solaris et Linux, et entre SCO/Unix et Linux. La manipe ci-dessous marche notamment sous Debian.

Comment ré-activer cette fonction bien pratique sous Ubuntu avec KDE?
Lorsque l’on utilise KDE, il y a de fortes chances que l’on utilise aussi KDM, je gestionnaire de connexion.
Modifier dans le fichier /etc/kde4/kdm/kdmrc la ligne :

ServerArgsLocal=-nr -nolisten tcp

en retirant l’option -nolisten tcp .

Et redémarrer le serveur X, en gros on redémarre la machine c’est plus facile…

Après redémarrage, on peut vérifier que le port TCP/6000 est bien ouvert :

netstat -aln46 | grep 6000
tcp        0      0 0.0.0.0:6000            0.0.0.0:*               LISTEN
tcp6       0      0 :::6000                 :::*                    LISTEN

C’est gagné, plus qu’à l’utiliser :-D
Prochaine leçon…