(SSH) Ist es gefährlich, das Terminal ohne "exit" zu schließen?

24

Das ist oft passiert.

Während der SSH aktiv ist, bin ich so müde und schließe einfach das Terminal ohne exit

Ist es gefährlich, so etwas zu tun?

apasajja
quelle
Drücken Sie einfach Ctrl+Dzweimal anstelle von Alt-F4oder Ctrl-Q, um das Exit-Signal an Ihre aktuelle SSH und dann an Ihre Shell zu senden. Der Terminal-Emulator sollte dann automatisch ohne Shell geschlossen werden. Problem gelöst.
Profpatsch
@Profpatsch: es sei denn, natürlich, verwenden Sie IGNOREEOF(in bash) , weil Sie auch ein Terminal - Multiplexer verwenden und bekam überdrüssig manchmal Vertippen ^a dwie ^d, dadurch unbeabsichtigt verlassen.
0xC0000022L

Antworten:

28

Keineswegs. Wenn der Terminal-Prozess beendet wird, sterben auch die darin enthaltenen Client-Prozesse ab. In diesem Fall wird die Verbindung zum Remote-Server vom Betriebssystem getrennt. Der Server sieht, dass die Verbindung getrennt wird, und beendet die Prozesse auf dem Server.

Es kann jedoch vorkommen, dass auf dem Server noch Prozesse ausgeführt werden, die im Hintergrund ausgeführt werden und bestimmte Signale ignorieren.

Flup
quelle
10

Wenn wir das Terminal direkt schließen, generiert es ein SIGHUP-Signal. Dieses Signal beendet alle Aufgaben / Prozesse unter dem Terminal automatisch / sofort. Also kein Problem aufgetreten.

Amit Sachdeva
quelle
-1

Dies kann nicht wahr sein. Wenn die Bash eine Schleife ausführt, kann sie SIGHUP ignorieren und die Sitzung fortsetzen. Ich versuche gerade herauszufinden, warum dies passiert.

Auch das Herunterfahren ist hier sehr gut vermerkt, aber anscheinend hat Systemd einige Verhaltensweisen geändert.

/server/463366/does-getting-disconnected-from-an-ssh-session-kill-your-programs

NeuralSandwich
quelle
Es ist besser, wenn Sie Ihre Behauptung zuerst validieren, bevor Sie antworten, anstatt mit "Dies ist möglicherweise nicht wahr" zu antworten.
Kusalananda
Nun, es kommt alles darauf an. Es scheint sich zu unterscheiden zwischen: * Init-Systemeinstellungen * Shell-Einstellungen * Im Terminal ausgeführten Prozessen und deren Signalverarbeitung
NeuralSandwich