Programm automatisiert auf mehreren Rechnern starten und beenden

G

googelybear

Grünschnabel
Hallo zusammen,

Ich muss ein Programm (eine eclipse Anwendung) auf mehreren Rechnern laufen lassen und später auch wieder auf allen beenden. Das Prog läuft auf unbestimmte Zeit und muss manuell beendet werden (z.b. per kill Befehl).
Meine Idee ist nun das Starten mit einem Shellskript etwa so zu machen (kenne micht nicht besonders mit shell scripts aus, bin also für jeden Verbesserungsvorschlag dankbar):
Code:
for i in rechnername1 rechnername2 rechnername3 etc.
do
  echo "Starting on "$i
  ssh $i <command>&
done

Gibt es hier eine bessere Möglichkeit?
Mein Hauptproblem ist nun folgendes: Wie kann ich nun zu einem beliebigen Zeitpunkt die Anwendung auf allen Rechnern stoppen (automatisiert natürlich ;-) ) Vielen Dank für eure Hilfe!
 
Hallo

Also die Anwendung scheint mir doch sehr suspekt.

Aber wenn du nur per kill beenden kannst, dann
kannst du natürlich auch diesen Befehl auf RH ausführen.

Allerdings brauchst du dazu auch die Rechte (ssh als root).

Desweiteren benötigst du die Information, ob dein Programm seine Arbeit getan hat und die entprechende PID falls/(und ob) es überhaupt noch läuft.

Die PID kannst du auf verschiedene Weise ermitteln.
Eine Möglichkeit ist:
kill $(ps ax|grep "[P]rogrammname"|tr -s " "|cut -d " " -f2)
Das [P] bezeichnet den Ersten Buchstaben vom Programmname.
Das verhindert, dass grep selbst mit angezeigt wird.

Oder du verwendest gleich pkill.

Am Besten ist es, wenn du mehrere Befehle brauchst, diese in ein Script zu schreiben, dann dort abzulegen und per ssh auszuführen.

Ob dein Programm seine Aufgabe erfolgreich beendet hat, musst du selbst ermitteln. Dazu kannst du dir ein Statusflag in einer temporären Datei o.ä. setzen, und diese dann abfragen.

Gruß Wolfgang
 
Hallo Wolfgang,

Was is daran suspekt? Das Programm öffnet schon eine eigene Konsole auf dem es gesteuert und auch kontrolliert beenden werden könnte, aber ich möchte ja nicht auf allen Rechnern eine Konsole offen haben und am Ende überall "quit" eintippen.
Das skript funktioniert leider bei mir nicht ;-/ Wenn ich es z.B. teste indem ich zuerst man ps& starte dann kill $(ps ax|grep "[m]an ps"|tr -s " "|cut -d " " -f2) via scriptfile aufrufe. Mach ich was bei der Eingabe falsch?
 

Ähnliche Themen

Kann (KDE) Programme nicht mehr starten

Zurück
Oben