Ich möchte ein Programm von meinem Notebook aus per SSH-Verbindung zum Remote-Server ausführen. Das Problem ist, dass ich mit meinem Notebook nach Hause gehe :)
"Bildschirm" ist höchstwahrscheinlich das, was Sie wollen. Sie können die Verbindung nach Belieben trennen und wiederherstellen. Führen Sie nach dem SSH-Zugriff auf den Server den Bildschirm aus, bevor Sie das Programm starten. Ctrl-a, Ctrl-d trennt Sie (das Programm läuft trotzdem weiter). Bei Ihrer Rückkehr verbindet Sie 'screen -r' wieder, als wären Sie nie weg gewesen.
Stellen Sie es sich als VNC oder RDP für Textterminals vor. Suchen Sie für viele Tutorials nach "using screen".
Bearbeitet, um hinzuzufügen: Heutzutage würde ich stattdessen tmux empfehlen , insbesondere wenn es in Verbindung mit dem Skript tmx verwendet wird . Die Möglichkeit, Fenster (vertikal und horizontal) zu teilen und ihre Größe zu ändern, ist ein großer Vorteil über dem Bildschirm.
Übrigens, der Bildschirm läuft weiter, wenn Ihre Verbindung abläuft oder so, solange Sie noch daran angeschlossen sind. Einige nützliche Befehle: Strg + a, Strg + d = vom Bildschirm trennen, Bildschirm -r = erneut an einen Bildschirm anhängen, Bildschirm -x = im gemeinsam genutzten Modus an einen Bildschirm anhängen (kann zum Lehren usw. verwendet werden, zwei Benutzer können sich teilen derselbe Bildschirm), Strg + a, esc = in den Bildlaufmodus wechseln (drücken Sie q, um den Bildschirm wieder zu verlassen). HINWEIS: Wenn Sie einen Bildschirm durch Eingabe von "Bildschirmprogramm" starten, wird das Programm sofort auf dem Bildschirm gestartet. Wenn es jedoch beendet wird, geht der Puffer verloren. Wenn Sie nur "screen" eingeben, erhalten Sie ein beständiges Terminal.
Chris, auch danke für die nützliche Antwort.
18
nohup ist ein Befehl, der einen anderen Befehl ausführt und ihn immun gegen das "Auflegen" -Signal macht.
Sie führen es so einfach wie:
nohup command
Sie müssen aber auch stdin, stdout und stderr umleiten. Weitere Informationen finden Sie auf der Manpage.
Sie werden es wahrscheinlich auch in den Hintergrund stellen wollen.
Sie müssen auch den killBefehl kennen, um ihn schließlich zu töten.
nohup
ist ein Befehl, der einen anderen Befehl ausführt und ihn immun gegen das "Auflegen" -Signal macht.Sie führen es so einfach wie:
nohup command
Sie müssen aber auch stdin, stdout und stderr umleiten. Weitere Informationen finden Sie auf der Manpage.
Sie werden es wahrscheinlich auch in den Hintergrund stellen wollen.
Sie müssen auch den
kill
Befehl kennen, um ihn schließlich zu töten.quelle
tee
diese Option, um stdin, stdout und stderr umzuleiten.