Sair do ssh e depois suspender a máquina

0

Eu configurei uma máquina remota para uso em deep learning - ubuntu 16.04, anaconda 3, notebook jupyter, etc. Configurei o openssh com o redirecionamento de portas, chaves strongs, sem senha e tudo está funcionando muito bem.

Entre sessões, quero poder fazer com que minha máquina hiberne / suspenda. Meu entendimento é que 16.04 agora usa systemd para gerenciar esse tipo de comportamento e que sudo systemctl suspend é o comando que eu deveria estar usando para colocar isso em suspensão. Eu tentei isso e funciona sim!

Se eu colocar a máquina para dormir da minha sessão SSH, o terminal do meu laptop será bloqueado porque a outra extremidade está agora adormecida. Eu não sei se isso está causando problemas, mas não parece bom para mim.

Se eu sair da minha sessão ssh primeiro, não poderei suspender a máquina porque não estou autorizado.

Gostaria de criar um pequeno script que me permita sair e suspender a máquina.

Eu fiz uma pequena pesquisa, a maioria das coisas que eu estou achando no google são "como eu faço logout do ssh e mantenho minha sessão viva" então eu não acertei os termos certos. Também encontrei algumas coisas relacionadas ao dbus ou startup, mas nada especificamente sobre o systemd. Alguém que eu conheço sugeriu o seguinte, mas não funcionou. Ele me desconectou, mas a máquina não suspendeu / dormiu / hibernou.

logout && sleep 2 && sudo systemctl suspend

Não tenho certeza se foi porque precisei autenticar como sudo ou porque o logout acabou com a avaliação de curto-circuito.

Então, eu estou procurando um script que eu possa executar e que faça o seguinte (a ordem não funciona para mim, desde que a coisa toda funcione).

  • verifique se sou autenticado como sudo (se o sudo for necessário)
  • faça logout da minha sessão ssh
  • coloque a máquina em suspensão

Ou eu estou pensando que talvez haja uma maneira de sair e executar um script na minha máquina local para suspender?

    
por Rothrock 14.03.2017 / 21:33

1 resposta

1

Já considerou terminar sua sessão ssh e executar o comando suspender sobre o ssh em vez de abrir uma sessão totalmente nova?

ssh -t user@host sudo systemctl suspend

Isso deve fazer o que você quiser. Caso contrário, você pode configurá-lo para o sudo sem senha, mas você deve considerar cuidadosamente as implicações de segurança disso.

Algumas fontes para procurar maneiras de configurar:

link

link

link

    
por RobertRSeattle 14.03.2017 / 21:43