Amigável desconectar ssh no desligamento?

0

Eu recentemente mudei de Jessie Raspbian (que tem uma interface de usuário completa) e Jessie-Lite (que é enxuta e apenas CLI). Eu me conecto via ssh e tenho mexido muito com a configuração e reiniciado muito o meu Raspberry Pi. Com Jessie completa, eu poderia enviar sudo shutdown -r now e minha conexão ssh (da OSX Sierra) receberia um sinal de que ela estava sendo desconectada e fechada no final do cliente.

Então eu troquei para Jessie-Lite e a mesma coisa ( sudo reboot faz isso também) só vai fazer o ssh travar, eventualmente depois de um longo tempo me dá a habilidade Ctrl-C onde ele me da uma mensagem quebrada. Eu nem percebi que o comportamento era devido a algo extra ou uma configuração! Mas agora é muito chato e se eu não quiser esperar, tenho que fechar meu terminal.

Qual é o molho mágico? O que estou perdendo e como posso instalá-lo ou configurá-lo para recuperar o comportamento amigável desconectado?

(note - minha transição também incluiu passar do kernel 4.9 para 4.4)

    
por David Woods 22.09.2017 / 06:42

1 resposta

2

Obrigado @DevilaN por me apontar para esta resposta a um problema similar ! Isso me iniciou no caminho certo. Veja mais algumas informações para quem está chegando aqui para obter ajuda.

O 'molho faltante' era um sinal SIGTERM, isso impede que meu cliente ssh seja interrompido e indica que ele deve ser fechado. Isso acontece com esta mensagem:

Connection to 192.168.0.99 closed by remote host.
Connection to 192.168.0.99 closed.

SIGTERM é um aviso de rescisão. Para enviá-lo, um gerenciador de login mais flexível precisa ser instalado sobre o sistema de baunilha que Jessie Lite veio com. Isso é instalado com o pacote systemd-logind , que por sua vez pode ser gerenciado com loginctl . systemd-logind é usado para responder a interrupções de hardware em suspensão, pode permitir que outros aplicativos interrompam o processo de desligamento e ajuda em sessões com vários usuários, incluindo serviços conectados ao usuário. Não é difícil ver por que uma distribuição de UI do Linux como o Raspbian Jessie escolheria usá-la.

Também é necessário o dbus , que é usado para distribuição de mensagens, como manipular a mensagem SIGTERM e ajuda nos logins no nível da sessão para vários usuários.

Como afirmado na outra resposta, um forro para habilitar esta mensagem amigável no desligamento é:

sudo apt-get install libpam-systemd dbus

Se alguém puder expandir (ou corrigir!) qualquer destas informações, por favor, faça!

    
por 22.09.2017 / 18:15