Schrift
[thread]10987[/thread]

Net::ssh::perl - command im hintergrund ausführen (Seite 2)

Leser: 2


<< |< 1 2 >| >> 13 Einträge, 2 Seiten
murphy
 2007-12-11 19:10
#103742 #103742
User since
2004-07-19
1776 Artikel
HausmeisterIn
[Homepage]
user image
Gast+2007-12-11 12:51:07--
[...]
Also was ich eigenlich wollte ist, dass ich eine Möglichkeit habe per Knopfdruck dem Hauptprogramm zu sagen: verbinde dich mit dem Rechner xyz, starte ein dort vorhandenes shellscript und kümmere dich nicht mehr weiter darum.
[...]


Wenn Du willst, dass das Skript auf dem entfernten Rechner im Hintergrund läuft, wäre es sinnvoll, dafür zu sorgen, dass es forkt und sein kontrollierendes Terminal los wird, damit Du die SSH-Verbindung nach dem Start des Skriptes sogleich wieder schließen kannst, ohne dass das Skript dabei auch abgeschossen wird.

Wenn Du das Skript aber demenstprechend modifiziert hast, sollte es eigentlich lokal gar kein Problem mehr geben, weil das Kommando, dass Du per SSH absetzt, dann sofort zurückkehrt und nur ein Hintergrundprozess weiterläuft.

Willst Du stattdessen das Kommando im Hintergrund in irgendeiner Form weiter über die SSH-Verbindung beobachten, dann wird es etwas komplizierter, da Dir dann vermutlich die Ereignisschleife Deines GUI-Toolkits etwas im Wege steht.
When C++ is your hammer, every problem looks like your thumb.
nepos
 2007-12-12 09:42
#103752 #103752
User since
2005-08-17
1420 Artikel
BenutzerIn
[Homepage] [default_avatar]
Naja, man könnte das Script dann auf der Remote-Maschine mit screen starten und diese detachen...
Damit sollte das Problem mit dem Terminal erschlagen sein und man kann später auch noch nachsehen, was das Skript getan hat bzw. noch tut, wenn man das denn will...
murphy
 2007-12-12 19:41
#103798 #103798
User since
2004-07-19
1776 Artikel
HausmeisterIn
[Homepage]
user image
Screen über eine SSH-Verbindung automatisch zu kontrollieren wird aber auch nicht die leichteste Übung -- schließlich kann man da nicht mehr vernünftig mit zeilenweiser Ein- und Ausgabe arbeiten sondern nurmehr Tastenanschläge senden und ANSI-Steuerbefehle auslesen, aus denen man dann durch Emulation eines Terminals das Bildschirmbild auf dem Server ablesen kann. Zu allem Überfluss ist das Verhalten der Verbindung aber abhängig von den eigenschaften der Pseudoterminals auf dem Server und dem Client der SSH-Verbindung plus Screen ist auch noch ziemlich frei konfigurierbar, so dass die Befehle, die man senden muss, und die Daten, die man Empfängt, unterschiedlich sein können. Darüber wieder eine Abstraktionsebene aufzubauen, mit der man ordentlich programmieren kann, ist zwar möglich aber richtig viel Aufwand...
When C++ is your hammer, every problem looks like your thumb.
<< |< 1 2 >| >> 13 Einträge, 2 Seiten



View all threads created 2007-12-10 11:18.