PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : SSH mit grafischer Anwendung?



Moghedin
29.06.03, 16:17
Jetzt meldet Ihr euch mit telnet/rsh/rlogin/ssh bei dem Remoterechner an. Dazu
ist noch zu sagen das neue *n*x-Betriebssysteme eigentlich alle ssh-deamons
mitinstallieren, so das der Sicherheit wegen nur noch ssh in Frage kommt.
Dann muß die DISPLAY-Variable auf das zuvor freigeschaltete Display gesetzt
werden:

export DISPLAY=MyLocalPC:0.0

Wobei MyLocalPC der Rechnername oder die IP-Adresse des Ausgabe-Displays sind.
Bei Rechnernamen muss natuerlich gewaehrleistet sein das der Hostname zur IP-
Adresse aufgeloest werden kann durch /etc/hosts, NIS oder DNS. Die erste 0
hinter dem Doppelpunkt gibt den zu benutzenden X-Server(es gibt in der Regel
nur einen) auf diesem Rechner an und muß angegeben werden. Die zweite 0 gibt
die zu verwendete Grafikkarte an und ist zusammen mit dem voranstehenden Punkt
optional.

Jetzt koennt Ihr ohne weiteres die entsprechende Anwendung starten.

Auch zu finden hier (http://www.linuxforen.de/forums/showthread.php?s=&threadid=42330&highlight=VNC)

Kann mir jemand das mit den Nullern genauer erklären? Ich steig da nicht durch was ich eintragen muss. Ich würde gerne KDE als grafische Anwendung starten. Kann mir da vielleicht jemand weiterhelfen? Vielen dank schonmal. :)

psycholars
29.06.03, 16:36
einzelne appz würde ich mit ssh -X -C user@host starten!
mit -X machste ein X-Forwarding
-C ist Compression

wenne den ganzen Desktop übertragen willst, nimm VNC


lars

Moghedin
29.06.03, 16:40
Dankeschön, ich check des zwar immer noch nicht (ja, noob), aber egal. Wenn jemand das mit den Nullern erklären könnte wäre cool. Gibt's vielleicht irgendwo nen FAQ, für die VNC Installation? :D

psycholars
29.06.03, 16:47
ist die Displaynummer!

möchtest Du mit Windows oder Linux Clients auf deinen Server zugreifen? Oder anderen Systemen? geh mal auf www.tightvnc.org

welche Distribution hast Du denn?

Moghedin
29.06.03, 16:52
Ähm, ich will mit SuSE 8.1 auf SuSE 8.1 zugreifen. Ich will mir eigentlich einen Rooter bauen, (FAQ dazu hab ich gefunden), aber ich will mir einen Bildschirm sparen, und will deswegen von meinem auf den Rooter zugreifen. VNC hab ich inzwischen installiert, das spukt mir aber folgendes aus:


_XSERVTransSocketINETCreateListener: ...SocketCreateListener() failed _XSERVTransMakeAllCOTSServerListeners: server already running Fatal server error: Cannot establish any listening sockets - Make sure an X server isn't already running

Naja, mit Linux und Netzwerk kenn ich mich nicht wirklich aus. Ich hab versucht den anderen über die LinNeighbourhood zu erreichen, des funzt aber nicht. Sie können sich aber gegenseitig anpingen.

psycholars
29.06.03, 17:00
Naja... wenn Du nur die Files haben willst kannste das mit NFS machen,
die Fehlermeldung sagt, dass Du wohl mehrmals den Server gestartet hast.. ps es gibt immer einen Client und einen Server,
oder nutz doch einfach scp ;)
es gibt viele möglichkeiten, was willst du genau am Router machen?

lars

Moghedin
29.06.03, 17:06
Ich will das mein Rechner (SuSE 8.2) und der von mienem Vater (Win 98) über den ins I-net gehen, wegen Einzelplatznutzung und so. Kontrollieren will ich den aber über meinen PC. Muss ich den Client von VNC auf dem Rooter installierne? Sehr wahrscheinlich. Naja, ist das erste mal in einem LinuxNetzwerk. :rolleyes:

psycholars
29.06.03, 17:20
wenn Du denn nur zur Config Fernsteuern willst, würde ich es mit SSH machen, ist eigentlich am einfachsten, brauchst ja nciht den gesamten KDE DEsktop, sondern nur die jeweiligen Anwendungen
Router: vncserver
Deine Workstation: vncclient

Moghedin
29.06.03, 17:42
Ja, aber für ssh muss ich ja wissen was es mit den Nullern auf sich hat, und bräuchte dafür die genaue einstellung. wie ich Dateien im Netzwerk kopiere wäre auch gantz nett zu wissen. :rolleyes:
Brauch man irgendeine spezielle einstellung in der LinNeighborhood um sich zu finden?
Sorry, für die vielen dummen Fragen. :ugly:

psycholars
29.06.03, 17:52
immer schoen alles lesen


einzelne appz würde ich mit ssh -X -C user@host starten!


Brauch man irgendeine spezielle einstellung in der LinNeighborhood um sich zu finden?
ich hab das zwar noch nie benutzt, aber das war meines wissens nach für smb-shares, also Samba/Windows


wie ich Dateien im Netzwerk kopiere

also nochmal:
scp user@workstation:/verzeichnis user@router/:anderesverzeichnis

benutz bitte die suchfunktion, steht bestimmt recht oft erklärt

pitu
30.06.03, 09:29
Vergiss die Sache mit dem "export DISPLAY"! Ganz schnell wieder, jedenfalls im Zusammenhang mit ssh.

Wenn du die Variable per Hand setzt, anstatt per -X durch ssh, dann hast du dich ganz schoen selber ausgetrickst, da die X-Anwendung nicht mehr durch ssh getunnelt wird.

Also: ssh -X "nutzer@host" logget dich als benutzer auf host ein und setzt die Displayvariable automatisch. Mit echo $DISPLAY siehst du sie dann. Damit wird jedes grafische Programm das du nun auf der Shell startest automatisch durch den ssh-tunnel gelenkt.

Zur erklaerung der displayvariable:

host:0.0 bedeutet, auf dem Host "host", auf dem X-Server "0" und dem Bildschirm "0". Bist du auf dem gleichen host, also localhost, kannst du das "host" weglassen, hast du nur einen bildschirm, kannst du das ".0" weglassen. Dadurch reduziert sich die Angabe von Display auf ":0". von host1 auf host2 mit nur einem Bildschirm: "host1:0" (auf host2).

Mit den Xserver hat es folgendes auf sich. Du kannst auf einem Rechner mehrere X-Server starten. Wenn du schon X hast, geh mal auf eine virtuelle konsole (z.B. [CTRL]-[ALT]-[F2] und melde dich als benutzer an. gibt dort ein "startx -- :1" Dmit wirst du ab soforft 2 Xserver am laufeb haben, mit denen du wechseln kanst mittels [CTRL]-[ALT]-[F7] und [CTRL]-[ALT]-[F8]. Die beiden Xserver haben nun in der Displayvariable folgenden beiden "vollstaendigen" Werte stehen:

localhost:0.0 und localhost:1.0 (localhost durch hostnamen ersetzen).

So, wenn du nun 2 Mopnitopre angeschlossen hast, kannst du multihead betreiben, das heist, die Oberflaeche z.B. in der breite verdoppeln und jede seite auf einem monitor darstellen. Auf welchen der beilen Monitore du nun dein Fenster schickst gibst du mit dem zweiten wert (0) an:

host2:1.0 schickt z.B. die Ausgabe auf den host2, zweiter Xserver (1) und linker Monitor (0)
host2:1.1 schickt z.B. die Ausgabe auf den host2, zweiter Xserver (1) und rechter Monitor (1)

etwas vereinfacht, aber ich denke, das konzept hast du nun verstanden.

-X bei ssh setzt nun so etwas komisches wie z.B. localhost:10.0 das bedeutet, deine Ausgabe geht and diesen "port", geht durch ssh, wird verschluesselt, und auf der anderen Seite schickt es ssh nun an das "echte" Display, naemlich das, von dem aus dies diese Anfrage gestartet wurde.

gruss,
pitu