PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Window Manager forwarden



moritzz
22.04.09, 15:21
Moin!

Ist es möglich den kompletten Windowmanager auf ein anderes Gerät zu forwarden? Ich weiß, dass ich per ssh -X einzelne Programme auf einem anderen Gerät darstellen lassen kann, aber ich hätte eigentlich gerne den kompletten Windowmanager inkl. Desktop usw. auf einem anderen Gerät.

oziris
22.04.09, 15:49
Ja, hab ich schon gemacht.

moritzz
22.04.09, 15:55
Sagst du mir auch wie du es gemacht hast?

oziris
22.04.09, 16:08
Dieses Beispiel ist für den Blackbox Window-Manager, bei der Display-Nummer 3 der Remotehost heißt "remotehostname" und der Remoteuser "user":


export DISPLAY=':3'; xinit /usr/bin/ssh -X -l user remotehostname blackbox -- :3 -config xorg.conf
# oder mit startx, was aber überall verschieden sein kann ...
export DISPLAY=':3'; startx '/usr/bin/ssh -X -l user remotehostname blackbox' -- :3 -config xorg.conf

" -config xorg.conf" ist vermutlich optional und kann bei nicht-Xorg-Xservern (XFree) oder anderen Konfigurationen natürlich anders heißen. Der Pfad wird i.d.R. immer relativ zum Verzeichnis /etc/X11/ angegeben, d.h. dort müssen dann alle Konfigurationen vorliegen, die man als Benutzer zur Verfügung haben möchte. So isses zumindest bei mir.

Der sshd muss natürlich X11Forwarding auf yes haben, denn sonst muss man schröcklich drumherum wurschten. Gleiches gilt für die Firewall(s).

oziris
22.04.09, 16:16
Achso, es wäre ganz gut, wenn man SSH-Keys benutzt, sonst wartet das Ding auf's Passwort...

moritzz
22.04.09, 16:47
Ähem wo muss ich das denn ausführen? Also auf welchem Gerät?

oziris
22.04.09, 19:36
Mir ist noch etwas eingefallen: Wenn der Window-Manager Probleme hat einen freien Screen zu finden (als würde bereits ein Window-Manager laufen), dann kann man das böse "-Y" statt des "-X" nehmen. Ist aber nicht die erste Wahl.

Kurz gesagt: Das führt man auf dem Gerät aus, auf dem man das Bild sehen will. Also lokal.

Im Detail:
Der Teil in der Mitte, mit dem "/usr/bin/ssh ...", verbindet dann zum entfernten Rechner und startet dort den Fenster-Manager, der durch den Tunnel, den lokal gestarteten Xserver benutzt.

Leider ist "startx" meist ein Script, das bei jeder Distribution oder Version anders sein kann. "xinit" hingegen, sollte i.d.R. eine ELF-Binary sein, die zumindest bei den Distros relativ wenige Unterschiede aufweist. Nur bei den verschiedenen Versionen können dann Unterschiede auftreten.
Wenn es bei Dir also nicht klappt, dann kann es sein, dass Du andere Parameter brauchst, welche Du z.B. in den man-Pages Deiner Version nachschlagen können solltest.

Die Option mit dem "X11Forwarding" muss natürlich auf dem entfernten Rechner am sshd justiert sein (der muss danach wohl neu gestartet werden, oder? [Aussperrwarnnung!]) und die Firewalls müssen natürlich beide alles erforderliche zulassen. Die ssh-Keys werden dann, wie allgemein bekannt und in "man ssh" Section AUTHENTICATION beschrieben eingerichtet.

moritzz
23.04.09, 06:19
Danke für die Hilfe :)