HOWTO: Zobrazit 'programy X Windows' na vzdálené počítače prostřednictvím spediční 'připojení X' přes ssh
Účel: Mnohokrát vám může být v situaci, kdy potřebujete zobrazit / spustit programy (typicky 'program X Windows') na vzdáleném počítači z vašeho počítače (nebo aktuální) stroj.
Scénář: Pojďme první set-up scénář, aby lépe pochopili tento příklad
Stroj č. 1 - je stroj, na kterém byste chtěli zobrazit program / okno Machine2
IP adresa stroje 1 - 192.168.0.100
Stroj 2 - je stroj, jehož displej budete těšit na stroj 1
IP adresa stroje 1 - 192.168.0.200
Dále, že jsem za předpokladu, že oba stroje Debian (Etch a Lenny) nainstalované 'X windows', 'xdm' login žlab a fluxbox. Přestože můžete mít jakýkoli displej nebo správce oken dle Vašeho výběru (Xfce, GNOME, KDE, atd.)
Krok 1:
Stroj na 1 proveďte následující:
a) Pokud používáte xdm jako správce přihlášení do:
# nano /etc/X11/xinit/xserverrc
Mělo by to vypadat takto:
#!/bin/sh
# $Id: xserverrc 189 2005-06-11 00:04:27Z branden $
exec /usr/bin/X11/X -nolisten tcp
Nyní odstraňte řádek "-nolisten tcp", která v podstatě říká, X, aby "TCP" spojení na sebe (Machine 1).
Jen odhlásit a znovu přihlásit při aktivaci nastavení výše.
b) Pokud používáte GDM jako správce přihlášení do:
i) odhlášení
ii) Jdi na "Akce-> Konfigurovat login manager-> <enter heslo> -> Zabezpečení"
Un-zaškrtnout volbu "Zakázat TCP spojení na Xserver" takto:

Zrušte zaškrtnutí Deny TCP spojení
Klikněte na tlačítko "OK" a znovu přihlásit do systému (GNOME / KDE / Fluxbox)
iii) Uveďte následující příkaz z terminálu okna:
#xhost + <ip-address-of-machine2>
Příklad:
# xhost + 192.168.0.100
192.168.0.148 je přidán do seznamu řízení přístupu
Krok 2:
Stroj na 2, aby následující příkaz:
# export DISPLAY=<ip-address-of-machine 1>:0.0
Příklad:
# Export DISPLAY = 192.168.0.100:0.0
# Echo $ DISPLAY
192.168.0.100:0.0
Uvedené kroky říká, X Window systém, který zobrazuje všechny by měly být vyváženy do stroje, jejichž IP adresa je 192.168.0.100 na to zobrazit okno '0 '
Krok 3:
Od Machine 2, spustit libovolný 'X' na nástroj. Rozhodl jsem se spustit 'xclock', která v podstatě zobrazuje hodiny malé okno.
# xclock
A teď se stane kouzlo. Normálně byste viděli na displej na stejném stroji (počítači 2), ale hej, počkej ... ... .... Podívat se na obrazovce stroje 1 ... ..., měli byste být schopni vidět hodiny tam ....

Krok 4: (nepovinné Method)
Namísto toho kroku 3 můžete dosáhnout stejného pomocí následujících kroků:
# ssh -X root@<ip-address-of-machine2>
Example:
# ssh -X root@192.168.0.200
Bude se přihlásit, abyste skořápka Machine 2. Teď mi příkaz 'xclock':
Machine2># xclock
Jako obvykle, prosím, napsat komentář / zpětná vazba, pokud máte nějaké. Komentáře podporuje bloggeři psát více a udržet jejich vysoké duchy.
Také prosím nezapomeňte, že tento příspěvek níže.










19.února 2009 v 8:07 am
Mám Fedora 7 dosadit dále má system.I Snažím se spustit program C s grafikou SDL, která načte obrázek a zobrazí it.I chcete zobrazit obrázek na vzdáleném machine.I přihlášení přes rsh.i jsem schopen vykonat, ale xeyes při spuštění tohoto programu je pro mě chybu SDL rčení video režim nemůže být initialised.please pomoci ...
Thanks in advance
Odpovědět na tento komentář
Kushal Odpověď:
24.února 2009 v 107: am
Hi Shankar,
Děkuji Vám za Váš komentář!
Vypadá to, že vaše systémy jsou nastavení zobrazení vzdálených aplikací. Můžete vložit přesnou chybovou zprávu, že jste získali? Nejsem odborník na C / SDL grafické věci, ale může být vidět přesnou chybovou zprávu může dát nějaké větší stopy.
Odpovědět na tento komentář
24.února 2009 v 3:29 pm
Díky za odpověď Kushal.
Jsem přišel na to, jaký problém byl. můj program nebyl schopen nastavit na displeji přístroje do vzdáleného počítače. Když jsem změnil proměnnou DISPLAY jsem byl schopen dostat výstup ....
Díky za váš čas
Shankar
Odpovědět na tento komentář