La plupart des gens veulent se connecter à un serveur sur SSH avec l'option "-X" afin d'exécuter des programmes d'interface graphique sur l'hôte distant à l'aide de l'affichage du client. Je souhaite exécuter des programmes d'interface graphique sur le moniteur physique attaché au serveur. Est-ce possible ? Laissez-moi être plus précis:
Ma situation est la suivante: j'ai un poste de travail sans clavier ni souris, mais il a un moniteur qui lui est connecté. Je voudrais ssh avec mon ordinateur portable et être capable de lancer un programme graphique, tel que Xeyes ou SSVNC et qu'il apparaît sur le moniteur du poste de travail.
[xapple@laptop ~]$ ssh workstation
Last login: Mon Sep 26 20:03:35 2011 from laptop
[xapple@workstation ~]$ export DISPLAY=:0
[xapple@workstation ~]$ xeyes
No protocol specified
Error: Can't open display: :0
Je devrais peut-être expliquer quelques choses plus clairement:
Toute aide grandement appréciée!
toute application XLIB doit se connecter à un XServer. Vous devez dire à l'application la connexion au serveur par soit:
-display
le premier XServer peut généralement être atteint par la chaîne de connexion ': 0'. Alors, essayez ceci:
xeyes -display :0
ou ca
env DISPLAY=:0 xeyes
Ce poste de travail exécute-t-il un serveur Windows X? Sans cela, c'est tout discutable.
Vous avez besoin de quelque chose pour traiter les données dans des graphiques, des pixels, des couleurs et des emplacements. Un "moniteur" est inutile sans sorte de logiciel pour l'exécuter.
En supposant que c'est. (Mais du texte, ça sonne autrement)
Compte tenu des noms d'hôte (et une résolution DNS appropriée via/etc/hosts ou DNS ou autre) de "poste de travail" et "ordinateur portable" ... sinon, remplacez les noms d'hôte de la machine avec des adresses IP appropriées.
ssh workstation
xhost +laptop
vous pouvez ensuite vous déconnecter du poste de travail à ce stade, car cela définit les autorisations sur XServer du poste de travail pour permettre à "ordinateur portable" de se connecter.
si vous démarrez vos programmes avec l'affichage Env ViR Set de manière appropriée, vous pouvez provoquer l'affichage des applications sur le poste de travail, tout en exécutant sur votre ordinateur portable.
DISPLAY=workstation:0 xeyes
-ou alors-
export DISPLAY=workstation:0
xeyes
l'une ou l'autre méthode fonctionnera, ce dernier provoque tout ce que X11 est associé à être affiché sur le poste de travail lors du démarrage de cette coquille. (espère que cela a du sens)
La ligne "xhost" est de permettre la permission de l'ordinateur portable de se connecter au XServer du poste de travail. Sans cela, vous obtiendrez la permission refusée, à moins que vous ne démarrez le serveur X sans autorisations, ce qui n'est pas vraiment recommandé. La protection "Xhost" est toujours boiteuse, car les données sont envoyées "texte brut" entre ordinateur portable et poste de travail et pourraient être reniflées, mais c'est une solution facile.
Si vous souhaitiez la confidentialité, vous devez configurer une sorte de tunnel crypté entre votre ordinateur portable et le poste de travail (Port 6000 pour l'affichage: 0). Yup, ça devient étrange à ce stade.
Si vous êtes dans un environnement contrôlé, vous utilisez la commande "xhost + ordinateur portable" suffira si vous laissez la partie "portable" de cette commande 'xhost +', alors tout le monde peut se connecter au XServer et afficher les choses.
N'oubliez pas que votre souris n'est pas "connectée" au poste de travail XServer et vous ne pourrez pas manipuler des fenêtres ou cliquer sur les choses.
Si vous souhaitez que la souris soit connectée, je recommanderais quelque chose comme X2X, Synergy, VNC ou une application de partage d'écran basé sur X Windows.