Beendet das Schließen/Neustarten einer SSH-Sitzung die in dieser Sitzung laufenden Programme?

Beendet das Schließen/Neustarten einer SSH-Sitzung die in dieser Sitzung laufenden Programme?

Ich verwende die Webkonsole, um per SSH auf eine AWS-Instanz zuzugreifen. Dann starte ich eine XRDP-Sitzung, ABER die Sitzung läuft nicht über SSH.

Wenn ich diese SSH-Sitzung jedoch neu starte oder beende, wird auch alles beendet, was ich innerhalb dieser Sitzung ausgeführt habe (z. B. xrdp), selbst wenn ich es mit „&“ in den Hintergrund verzweigt habe. Ich weiß nicht, ob dies das erwartete Verhalten ist oder mit der SSH-Sitzung über den Browser zusammenhängt. Ideen zur Behebung dieses Problems und zur Vermeidung des Beendens aller Programme innerhalb dieser Sitzung wären sehr willkommen :)

Antwort1

Dies ist ein erwartetes Verhalten, da der Prozess, der das Terminal steuert, beim Beenden SIGHUPan alle seine untergeordneten Prozesse sendet, um sie zu benachrichtigen, dass das Terminal aufgelegt hat. Wie dies SIGHUPvon einem untergeordneten Prozess gehandhabt wird, hängt nur vom untergeordneten Prozess ab. Das Verschieben eines Prozesses in den Hintergrund blockiert keine Signale, es trennt lediglich den untergeordneten Prozess vom Terminal. Um das zu blockierenAuflegesignalSie sollten Ihr Programm nohupbeispielsweise mit ausführen. nohup myprogram &Das sollte in den meisten Fällen funktionieren.

verwandte Informationen