Wenn Sie sich an der Remote-Maschine anmelden, ordnet die sshd dort ein Pseudo-Terminal zu und startet Ihre Login-Shell. Alle Prozesse, die Sie starten, Hintergrund oder Vordergrund, sind untergeordnete Prozesse dieser Shell. (Informieren Sie sich über "Fork", "Parent Process" und "Child Process"; verwenden Sie den Befehl "pstree", um den Status des Systems anzuzeigen.)
Wenn Sie die Verbindung trennen, indem Sie beispielsweise Ihren Client schließen, schließt die sshd das Pseudo-Terminal. Auf diese Weise wird der Shell-Prozess (indirekt auf "Kontrollterminal" und "Sitzungsleiter" vorgelesen) beendet, was dazu führt, dass seine untergeordneten Elemente entweder beendet werden oder weil ihr Elternteil jetzt verschwunden ist init
. (Lesen Sie sich das "HUP-Signal" durch - es sollte sich in dem Steuergerät befinden, das Sie finden - und dem nohup
Befehl.)
Wenn Sie erneut eine Verbindung herstellen, weist sshd ein neues Pseudo-Terminal zu und startet eine neue Instanz Ihrer Login-Shell. Es gibt keinen Mechanismus, um die zuvor ausgeführten Prozesse - sofern sie noch laufen - an diese Shell anzuhängen (wenn dies der Fall wäre, müsste jedes Programm wissen, wie mit spontan erscheinenden untergeordneten Prozessen umzugehen ist, die möglicherweise den Standard gemeinsam nutzen möchten) In / Output usw. Eine "Shell" ist nur für Sie als Benutzer ein spezieller Prozess, nicht für das System).
Die einzige Möglichkeit, dies zu tun, besteht darin, ein Programm wie screen
oder zu verwenden tmux
(möglicherweise gibt es andere). Hierbei handelt es sich im Wesentlichen um einen Serverprozess, der seine eigenen Pseudo-Terminals mit Shells und was auch immer sonst verwaltet, und einen Client-Prozess, der Ihnen den Inhalt dieser ptys anzeigen und Ihre Eingaben senden kann. Wenn Sie die Verbindung trennen, wird der Client-Prozess abgebrochen, aber wenn Sie die Verbindung wieder herstellen, können Sie einen neuen Prozess starten - der Server wird weiterhin ausgeführt.
(Es gibt einige zu starke Vereinfachungen, aber das sollte Sie dazu bringen, zu verstehen, was tatsächlich passiert. Lesen Sie unter "Pseudo-Terminal" nach.)