segunda-feira, 9 de julho de 2018

Linux - tmux

https://sempreupdate.com.br/como-usar-tmux-aprenda-agora/ 
https://www.ibm.com/developerworks/community/blogs/752a690f-8e93-4948-b7a3-c060117e8665/entry/tmux_terminal_ssh?lang=en 
 

Tmux: mais poder para seu terminal SSH

AugustoCampos | Mar 3 2011 | Tags:  tmux ssh | 7,794 Views
 
Há mais de 20 anos o GNU Screen é o software escolhido por quem quer gerenciar melhor seus terminais locais e remotos - seja em consoles físicos, sessões de Telnet, de SSH ou qualquer outro ambiente que implemente um acesso mapeado em caracteres. 
Antecipando em muitos anos o recurso de múltiplas sessões ou shells em um mesmo processo, hoje corriqueiro (via abas) em boa parte dos aplicativos de terminal, o GNU Screen pode ser executado mesmo em terminais mais simples, e oferece recursos de gerenciamento, buffers mais extensos para cada um dos terminais virtuais que criar, seu próprio mecanismo para copiar e colar texto entre os terminais mesmo quando o ambiente não comporta, um sistema de logs, compartilhamento de tela e mais.
Mais importante do que isso para muitos usuários, o Screen permite a operação de desassociar um terminal virtual de um terminal físico, e posteriormente reassociá-lo a outro (ou ao mesmo, se for o caso).
Descrevendo assim parece um conceito complicado, mas um exemplo prático é simples: digamos que você está rodando uma sessão de debug em um servidor web remoto, via SSH, e dá início a um comando interativo que vai demorar 2h para rodar, pois vai realizar uma operação em todas as linhas do log da semana do servidor web.
Mas meia hora após rodar o comando, você percebe que no tempo de o programa terminar dá para ir para casa, tomar um bom banho e jantar. Mas o programa é interativo, não dá de simplesmente rodá-lo em background. O que fazer?
Se você estiver usando o Screen a solução será bem simples: você desassocia o terminal virtual em que o comando está rodando, desliga o seu desktop e vai pra casa. Depois do banho e da janta, faz um novo acesso SSH a partir do seu micro doméstico, roda o Screen e reassocia aquele mesmo terminal virtual em que o programa interativo foi executado, e ele estará lá, como se nada tivesse ocorrido, e tendo rodado durante todo esse período - o GNU Screen nem deixa ele perceber que algo diferente aconteceu.
 

Entra em cena o tmux

Os recursos que o GNU Screen oferece desde 1987 recebem o nome técnico de "multiplexação de terminal", e hoje são oferecidos também por uma série de outros aplicativos.

 
imagem 
 
Um dos representantes desta safra moderna é o tmux, nascido no âmbito do OpenBSD e oferecendo basicamente os recursos pelos quais o GNU Screen se notabilizou, mas com alguns destaques, como:
·         Uma linguagem de definição de scripts fácil de usar e de integrar à shell
·         A possibilidade de dividir uma janela física, tanto horizontal quanto verticalmente, em múltiplos paineis, e exibir shells diferentes em cada um deles
·         A possibilidade de mover e redimensionar livremente estes paineis
·         Suporte a Unicode e a terminais de 256 cores
·         Múltiplos buffers para recortar e colar
·         Menus interativos
·         Travamento de terminal (manual ou por temporização)
·         Código limpo, extensível, licenciado sob a BSD, e sob desenvolvimento ativo.
Há alguma diferenças de arquitetura entre o tmux e o GNU Screen, refletindo a diferença de idade entre ambos os projetos, e que podem servir como as razões necessárias para que usuários acostumados ao Screen resolvam experimentar a alternativa mais recente: várias delas podem ser consultadas na FAQ do tmux.
O tmux suporta Linux, FreeBSD, NetBSD, Solaris e AIX, além do OpenBSD no qual surgiu.

0 comentários: