Usando o comando screen

Usando o comando screen

Alan Victor Sabado, 20 de Dezembro de 2014


O comando screen abre sessões shell no terminal atual, como se você estivesse com várias sessões shell na mesma janela/terminal ou sessão ssh.

Quando você precisar executar um processo demorado remotamente e por acaso seu pc sofre uma queda de energia, ou sua conexão remota é perdida, o processo que você estava executando naquele momento remotamente, será finalizado porque o usuário/shell naquele momento foi finalizado.

Usando o comando screen, você poderá abrir várias shells na mesma sessão ssh. Por acaso seu pc sofre uma queda de energia, ou sua conexão remota é perdida no momento em que estava executando um backup, o processo não será finalizado, e quando você reconectar a sessão ssh, você pode voltar a screen de onde você parou, sem perder o processo rodando naquele momento.

As informações abaixo não é um script.

#Testando na maquina local.
#Instalando em Debian Likes
apt-get install screen
 
#Instalando em RedHat Likes
yum install screen
 
#Atalhos básicos dentro da screen:
#Entre no screen digitando o comando screen, pressione ENTER para sair das informações do programa.
#Pronto, você está numa nova bash/shell no programa screen.
 
#Alguns atalhos:
#Abre uma nova bash/shell na screen:
ctrl+a c (tecle ctrl+a, solte e tecle c)
 
#Muda de bash/shell na screen
ctrl+a n
 
#Fechar uma bash/shell da screen
#exit, ou matar o processo, pid da bash/shell
#Sair do screen mantendo ele e suas shells em background
ctrl+a d
 
#Esperimente fechar o terminal, abrir denovo, e digitar:
#Lista a as sessões screen rodando:
screen -ls
 
#Entra numa sessão screen
screen -r
#ou
screen -r 'nome da sessão screen' por ex:
screen -r 2966.pts-4.debian
 
#Para entrar numa screen ativa "Attached"
screen -D -r 2966.pts-4.debian

Você voltará para suas shells de trabalho no momento que saiu com um ctrl+a d, e o processo que estava rodando naquela screen,bash,shell estará lá em execução.