Programm auf Remote-Rechner ausführen und Return Code zurückliefern?



  • Hallo zusammen,

    zur Zeit versuche ich, einen Einstieg in das Thema Netzwerk-Programmierung zu bekommen.

    Mein Gedanke ist nun, ein Programm zu schreiben, welches auf dem lokalen (Linux-)Rechner laufen soll und dann ein Programm oder Script startet,
    welches sich auf einem anderen (Linux-)Rechner befindet ("tu dort irgendwas und beende Dich dann").

    Nach Beendigung des Scripts auf dem Remote-Rechner möchte ich den Return Code an das aufrufende Programm übergeben und ausgeben.

    "Klingt eigentlich recht einfach", dachte ich mir. Allerdings finde ich irgendwie den generellen Ansatz nicht.
    Soll heißen: Ich weiß gar nicht, WONACH ich eigentlich suchen soll.
    Alle Versuche, bei Google & Co. etwas zu finden förderten meist Beispiele für riesige komplexe Client/Server-Anwendungen zutage, nicht aber leicht verständliche und kurze Einsteiger-Dokus.
    Auch was Bücher angeht, scheint das Thema Netzwerk-Programmierung recht stiefmütterlich behandelt zu werden.

    Kann mir jemand einen Tipp geben, wo oder wie ich hier ansetzen kann oder gute und vielleicht einfach verständliche Dokumentationen/Bücher empfehlen?

    Vielen Dank im voraus!

    Gruß,
    kyusho



  • kyusho schrieb:

    ...

    Soll das eine Übung sein, oder brauchst Du das für irgendwas? Im zweiten Fall würde ich einfach ssh benutzen.



  • Wohl etwas von beidem 😉

    Zuerst möchte ich mal ausprobieren, ob's überhaupt klappt.
    Wenn dem so ist, würde ich es gerne entsprechend erweitern.

    Wie meinst Du das denn genau mit ssh?
    So was wie

    - system("ssh user@remote-rechner")
    - Programm aufrufen.
    - ssh-Connection beenden.

    oder gibt es das etwas "galanteres"?



  • du müsstest pipes benutzen, da du auf die ssh konsole NICHT zugreifen kannst mit
    std C++
    -> man ssh
    aber ansonsten sowas in der art ...

    mfg



  • kyusho schrieb:

    Wohl etwas von beidem 😉

    Zuerst möchte ich mal ausprobieren, ob's überhaupt klappt.
    Wenn dem so ist, würde ich es gerne entsprechend erweitern.

    Wie meinst Du das denn genau mit ssh?
    So was wie
    ...

    Naja, wenn Du ssh benutzt, dann musst Du selbst gar nichts mehr programmieren. ssh bietet bereits die benötigte Funktionalität.

    Zum Beispiel ls -l auf remotehost.net ausführen:

    ssh username@remotehost.net ls -l /
    


  • Das hört sich doch schon mal gut an! 🙂
    Dann werde ich mir mal die ssh-Manpages vornehmen.

    Besten Dank Euch beiden!

    Gruß,
    kyusho



  • Eine recht gute Einführung in die Socketporgrammierung unter Linux für Anfänger findest Du auch hier:

    http://www.galileocomputing.de/katalog/buecher/titel/gp/titelID-1278


  • Administrator

    BitShift schrieb:

    Eine recht gute Einführung in die Socketporgrammierung unter Linux für Anfänger findest Du auch hier:

    http://www.galileocomputing.de/katalog/buecher/titel/gp/titelID-1278

    1. Das ist kein Buch über Socket Programmierung, sondern in erster Linie C++.
    2. Die Meinung über diese Buch ist in diesem Forum, soweit ich das bisher mitbekommen habe, miserabel bis schrecklich. Also auf gar keinen Fall kaufen 😉

    Grüssli



  • Danke für die Tipps/Hinweise (Euch beiden)!

    @Dravere: Kannst Du denn irgendwelche - nach Möglichkeit leicht verständliche - Bücher in Richtung Socketprogrammierung empfehlen?

    Zukünftig möchte ich mich mit diesem Thema näher beschäftigen aber die meisten mir bekannten Bücher beinhalten dieses Thema entweder gar nicht oder es wird nur kurz darauf hingewiesen.

    (Trotzdem werde ich mir aber auch mal BitShift's Vorschlag ansehen, wenn ich das Buch irgendwo im Laden sehen sollte. Die Geschmäcker sind ja bekanntlich verschieden. 😉 )

    Gruß,
    kyusho



  • Schau dir auch mal http://www.pronix.de/pronix-25.html an.


Anmelden zum Antworten