HOWTO: Les programmes d'affichage «X Windows» sur les ordinateurs distants par des liaisons Forwarding 'X' par ssh
Objectif: Plusieurs fois, mai-vous être dans une situation où vous avez besoin d'afficher / exécuter vos programmes (typiquement du programme X Windows ») sur une machine distante à partir de votre hôte (ou actuelle) de la machine.
Première série Scénario: Permettez-up le scénario afin de mieux comprendre cet exemple
Machine 1 - est la machine sur laquelle vous souhaitez afficher le programme ou la fenêtre de Machine2
Adresse IP de la machine 1 - 192.168.0.100
Machine 2 - est la machine dont l'affichage que vous allez transmettre à Machine 1
Adresse IP de la machine 1 - 192.168.0.200
De plus, je pars du principe que les machines n'ont pas Debian (Etch ou Lenny) installées avec des «fenêtres X ',' xdm 'Manger login et fluxbox. Même si vous pouvez avoir n'importe quel écran ou gestionnaire de fenêtres de votre choix (Xfce, GNOME, KDE, etc)
Étape 1:
Sur Machine 1 procédez comme suit:
a) Si vous utilisez xdm comme gestionnaire de connexion faire:
# nano /etc/X11/xinit/xserverrc
Il devrait ressembler à ceci:
#!/bin/sh
# $Id: xserverrc 189 2005-06-11 00:04:27Z branden $
exec /usr/bin/X11/X -nolisten tcp
Maintenant, supprimez la ligne "-nolisten tcp", qui relate essentiellement X pour permettre à "TCP" connexions à lui-même (Machine 1).
Vient de déconnecter et se reconnecter pour activer la configuration ci-dessus.
b) Si vous utilisez GDM comme gestionnaire de connexion faire:
i) Sortir
ii) Allez dans "Actions-> Configurer le gestionnaire de connexion-> password> <Enter -> Sécurité"
Décochez l'option "Refuser les connexions TCP au serveur X" comme ceci:

Décochez la case Refuser connexion TCP
Cliquez sur "OK" et ouvrez une session dans votre système (GNOME / KDE / Fluxbox)
iii) Donner la commande suivante à partir d'une fenêtre de terminal:
#xhost + <ip-address-of-machine2>
Exemple:
# xhost + 192.168.0.100
192.168.0.148 être ajouté à la liste de contrôle d'accès
Étape 2:
Sur l'ordinateur 2, donne la commande suivante:
# export DISPLAY=<ip-address-of-machine 1>:0.0
Exemple:
# Export DISPLAY = 192.168.0.100:0.0
# Echo $ DISPLAY
192.168.0.100:0.0
Les étapes ci-dessus indique que le système X Window tous les écrans devraient être exportés vers la machine dont l'adresse IP 192.168.0.100 est sur elle vitrine '0 '
Étape 3:
Du 2 Machine, exécutez toute «utilité basée X '. J'ai choisi de lancer' xclock 'qui affiche une fenêtre essentiellement petite horloge.
# xclock
Et maintenant, la magie opère. Normalement, vous devriez voir l'affichage sur la même machine (machine 2), mais hé, attendez ... ... .... À regarder l'écran de la machine 1 ... ... vous devriez être en mesure de voir l'heure là-bas ....

Étape 4: (facultatif Method)
Au lieu de l'étape 3, vous pouvez également obtenir les mêmes résultats en procédant comme suit:
# ssh -X root@<ip-address-of-machine2>
Example:
# ssh -X root@192.168.0.200
Il se connectera à votre shell d'Machine 2. Maintenant donner la commande «xclock ':
Machine2># xclock
Comme d'habitude, s'il vous plaît laisser un commentaire / feedback si vous en avez. Commentaires encourage les blogueurs de publier plus et garder leur bonne humeur.
Aussi s'il vous plaît n'oubliez pas de noter ce poste ci-dessous.










Février 19th, 2009 at 8:07
J'ai Fedora 7 est installé sur mon system.I suis en train d'exécuter un programme C avec SDL qui permet de charger une image et it.I affiche souhaitez afficher l'image sur machine.I connexion à distance via rsh.i suis en mesure d'exécuter xeyes mais quand je lance ce programme, il me donne une erreur SDL dire le mode vidéo n'a pas pu être initialised.please aider ...
Merci d'avance
Répondre à ce commentaire
Kushal Réponse:
Février 24th, 2009 at 1:07
Salut Shankar,
Merci pour votre commentaire!
On dirait que vos systèmes sont configurés pour afficher des applications à distance. Pouvez-vous coller le message d'erreur exact que vous avez trouvé? Je ne suis pas un expert en C / SDL, mais les graphiques stuff mai Be Seeing les messages d'erreur exacte pourrait donner quelques indices.
Répondre à ce commentaire
24 février 2009 à 3:29 pm
Merci pour la réponse Kushal.
J'ai compris quel était le problème. mon programme a été incapable de définir le dispositif d'affichage à la machine distante. quand j'ai changé le i AFFICHAGE variable a été en mesure d'obtenir la sortie ....
Merci pour votre temps
Shankar
Répondre à ce commentaire