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?