Ich habe ein Skript geschrieben, mit dem ich einen neuen Dienst auf mehrere von mir kontrollierte Maschinen pushe und verteile. Um den Prozess auszuführen, verwende ich ssh, um den Prozess remote zu starten. Leider scheint der SSH-Befehl immer dann, wenn ich SSH zum Starten des Prozesses verwende, nie zurückzukehren, was dazu führt, dass das Skript blockiert.
Der Befehl wird wie folgt angegeben: ssh $ user @ $ host "/ root / command &". Wenn ich einfache Befehle wie ps oder who ausführe, wird der SSH-Befehl sofort zurückgegeben. Wenn ich jedoch versuche, meinen Prozess zu starten, wird er nicht zurückgegeben. Ich habe versucht, meinen Prozess in ein einfaches Bash-Skript zu packen, das den Prozess startet und dann beendet. Dabei bleibt jedoch auch der SSH-Befehl hängen (auch wenn das Bash-Skript eine Erfolgsmeldung ausgibt und normal beendet wird).
Hat jemand einen Einblick, was dieses Verhalten verursacht und wie ich den SSH-Befehl zurückgeben kann, sobald der Prozess gestartet wurde?
Vielen Dank für Ihre Erkenntnisse!