(SSH) É perigoso fechar o terminal sem "sair"?

24

Isso aconteceu muitas vezes.

Enquanto o SSH está ativo, estou muito cansado e apenas fecho o terminal sem exit

É perigoso fazer assim?

apasajja
fonte
Basta pressionar Ctrl+Dduas vezes em vez de Alt-F4ou Ctrl-Q, isso envia o sinal de saída para o ssh atual, depois para o shell e o emulador de terminal deve fechar automaticamente sem o shell. Problema resolvido.
Profpatsch
@ Profpatsch: a menos que, é claro, você use IGNOREEOF(in bash) porque você também usa um multiplexador de terminal e se cansou de digitar algumas vezes ^a dcomo errado ^d, encerrando sem querer.
0C4000022L

Respostas:

28

De modo nenhum. Quando o processo do terminal termina, os processos do cliente também desaparecem e, quando isso acontece, a conexão com o servidor remoto será fechada pelo sistema operacional. O servidor verá a conexão fechar e finalizará os processos no servidor.

No entanto, é possível que você termine com processos remanescentes no servidor se eles tiverem um plano de fundo e ignorem certos sinais.

Flup
fonte
10

Quando fechamos o terminal diretamente, ele gera um sinal SIGHUP. Este sinal mata todas as tarefas / processos sob o terminal automaticamente / instantaneamente. Portanto, não há problema.

Amit Sachdeva
fonte
-1

Isto pode não ser verdade. Se o bash estiver executando um loop, ele poderá ignorar o SIGHUP e continuar a sessão. Atualmente, estou tentando descobrir por que isso acontece.

Além disso, o processo de desligamento é observado muito bem aqui, mas aparentemente o Systemd mudou alguns comportamentos.

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

NeuralSandwich
fonte
Seria melhor se você validasse sua reivindicação antes de responder, em vez de responder com "isso pode não ser verdade".
Kusalananda
Bem, tudo depende. Parece ser diferente entre: configurações do sistema * Init * Configurações Shell * Processos que estão sendo executados no terminal e sua manipulação do sinal
NeuralSandwich