Ich bin per SSH bei meiner Ubuntu 11.04-Box angemeldet und muss ein Programm starten – es handelt sich jedoch um ein Windows-GUI-Programm, das unter WINE läuft.
Wie kann ich das Programm vom SSH-Terminal aus starten, sodass es auf dem Desktop geöffnet wird und dann geöffnet bleibt, auch nachdem ich mich von SSH abgemeldet habe?
Antwort1
So starten Sie ein grafisches Programm im Allgemeinen von einem Remotecomputer aus:
Führen Sie auf dem Zielcomputer aus
xhost +
. (Sie müssen dies von einem Terminal oder einem Anmeldeskript aus tun.)Melden Sie sich von einem Remote-Client per SSH bei der Zielmaschine an und führen Sie
nohup program &
das Programm aus (wobei „Programm“ für „Programm“ steht), so wie Sie es ausführen würden, wenn Sie an der Zielmaschine säßen.
Antwort2
Wenn Sie das Programm an Ihr Display weiterleiten möchten, verbinden Sie sich mit ssh -X
.
Aber ich nehme an, Sie möchten das Programm auf der Fernanzeige starten?
Wird verwendet
screen
, um das Programm geöffnet zu halten.Starten Sie das Programm mit dem richtigen Benutzer und der
DISPLAY
richtigen Variable der laufenden X-Session.
Zum Beispiel:
xterm -display :1000.0
oder:
DISPLAY=:1000.0 xterm
Dies sollte auch mit Wine funktionieren.
Antwort3
Stellen Sie sicher, dass Sie sshd
die Einrichtung so vorgenommen haben, dass X11-Weiterleitung zulässig ist.
Starten Sie dann einfach Ihre GUI wie gewohnt ( nohup
wenn Sie möchten, dass sie nach der Abmeldung ausgeführt wird) und sie wird auf Ihrem Computer angezeigt.
Bearbeiten: Wenn Sie möchten, dass dies von einem Symbol aus ausgeführt wird (siehe Kommentar), können Sie den Symbolbefehl als Alias verwenden für
ssh [email protected] 'nohup MyProgram &'
Oder erstellen Sie einfach ein kleines Shell-Skript (mit dem Namen ~/bin/runme.sh) auf dem Remote-Host mit folgendem Inhalt:
#!/bin/sh
nohup MyProgram & 2>&1 $HOME/.nohupp.log
und aufrufen mit
ssh [email protected] ~/bin/runme.sh