Tmux: Introdução ao multiplexador de terminal (Parte Um)

Continuamos com os freaks:

Se você está acostumado a fazer uso extensivo de consoles (eu me incluo), você terá percebido que a melhor opção ao realizar certas tarefas sem colocar muitos consoles no desktop é usar um multiplexador que nada mais é do que uma entidade que permite a criação de uma pilha de consoles acessíveis a partir do mesmo terminal. No melhor dos casos, temos ferramentas como gnuscreen  que é obviamente a opção mais conhecida e mais duradoura. A verdade é que no mundo do software livre, se podemos encontrar algo, eles são opções de uso. Temos literalmente uma gama quase infinita:

Desta vez eu quero falar um pouco sobre o Tmux

Se gosta de mim você tem arco apenas faça um pacman -S tmux para instalá-lo Usuários de outras distros os têm da mesma forma nos repositórios oficiais.

Depois de instalado, começamos a digitar tmux em um terciário:

startmux

À primeira vista, é apenas um terminal aguardando que os comandos sejam executados e certamente é. A primeira coisa a ser executada neste tutorial serão vários terminais em uma única janela, para os quais pressionamos a combinação de teclas:

Control + b Control +%

restante da seguinte forma:

Dividir

Como veremos, o espaço de trabalho é dividido primeiro em dois, mas podemos repetir o processo quantas vezes forem necessárias para obter quantos terminais quisermos. Logicamente, talvez com tantos espaços de trabalho, certamente precisamos ordenar a disposição desses terminais de uma determinada maneira. Para o qual pressionamos:

NOTA: na primeira tentativa desta combinação de chaves, os terminais serão ajustados para terem o mesmo tamanho em dimensões, então você não verá uma mudança de posição em si, mas uma disposição deles

Ctrl + b tecla de espaço

mudança de posição

Agora nos é apresentado o caso de querer ir de um terminal a outro, para o qual fazemos uso da lógica de direção das teclas para cima e para baixo no teclado. Neste caso, como temos dois terminais um em cima do outro, pressionamos:

Tecla Control + b para baixo (assumindo que o ponteiro está no terminal acima)

Control + b tecla para cima (assumindo que o ponteiro esteja no terminal inferior)

 No caso de termos mais terminais, por exemplo, um no terminal superior e uma vez localizado no primeiro terminal abaixo, usaríamos a lógica de direção das teclas do teclado, que é:

Ctrl + b tecla direita

deccionright

Agora, como mencionei na descrição de entrada, Tmux literalmente cria uma pilha de sessões no mesmo terminal. O comando para isso é:

Control + b c

nova tela

A partir deste momento teremos criado uma nova sessão (parte da pilha que eu estava comentando) e que podemos verificar olhando para a parte indicada da imagem (😛). Veremos um asterisco alterado para o terminal, onde encontramos exatamente isso como um guia. Se quisermos voltar para onde começamos, pressionamos:
 
Control + b p (para retornar ao terminal anterior) 
Control + bn (para ir para o próximo terminal)
 
Veremos o asterisco mudar de lugar novamente. Cada janela é independente, então você pode dividir e modificar à vontade.
Se quisermos fechar uma das janelas de sessão, teremos que pressionar:
 
                                                                                                                                                                 Control + b &
 
limite

 
Na parte indicada em amarelo, veremos uma caixa de diálogo de confirmação de fechamento onde devemos colocar Y (para fechar) ou N (para cancelar o pedido)  S / N . permanecer no terminal adjacente após ter respondido afirmativamente à pergunta.
 
A questão seria o quão útil eu dou esta ferramenta? As respostas são muitas, mas a que me vem à cabeça a mais rápida é: ter vários consoles para gerenciar contas ssh, análise de rede, executar comandos de forma geral e monitores de sistema sem sair de um terminal aumenta a produtividade de quem precisa lidar com muitos terminais. 
 
Na segunda parte deste tutorial introdutório irei explicar um pouco mais sobre a configuração interna do Tmux e outras funcionalidades, embora o manual fornecido pelos desenvolvedores esteja sempre disponível.  "Man tmux" 

Deixo-vos uma captura adicional:

quase iii

Felicidades-….


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.

  1.   satanás AG dito

    Olá, excelente postagem. Esclarecendo e informando que está nos repositórios Debian Wheezy (7). Chega então, com um apt-get install tmux

    Saudações.

    1.    freebsddick dito

      É bom que tenha sido benéfico para você. Felicidades!!

    2.    eliotime3000 dito

      Já instalei e funciona muito bem para mim.

  2.   Ezequiel dito

    Acima de tudo, o tmux é muito útil quando você se conecta remotamente via ssh. Excelente entrada!

    1.    freebsddick dito

      Sem dúvida .. Francamente é o primeiro uso que me vem à cabeça !! mas é claro que as possibilidades são muito amplas !! .. Saudações

  3.   Jesus Ballesteros dito

    Muito obrigado por este post, estava procurando algo assim para o KDE, anteriormente usei o emulador terminator mas não existe uma alternativa qt que faça o mesmo, isso me ajudou muito.

    Saudações cordiais.

    1.    freebsddick dito

      Bem, sep .. é uma ferramenta bastante recente .. o que me impressiona por sua simplicidade de uso. talvez se você der uma olhada no documento oficial você poderá conseguir muitas coisas interessantes. Felicidades

    2.    Pandev92 dito

      Não entendo, o konsole não funciona para você? oO

  4.   pergunta dito

    Legal. Mas ainda tenho uma dúvida: que diferença há em usar um emulador de terminal (como o do gnome, por exemplo) que permite abrir várias abas no mesmo aplicativo? Parece-me mais fácil usar o que mencionei, e a maioria dos terminais de ambiente de desktop que conheço têm essa possibilidade ...

    1.    freebsddick dito

      A facilidade é um fato um tanto subjetivo. Quando um usuário tem que usar ferramentas como o urxvt, eles procuram simplicidade, eles não querem que seja bonito (embora possa ser com alguma outra configuração adicional).

      No caso do rxvt, você tem a possibilidade de ter abas devidamente identificadas com as fontes de sua preferência e com as cores que desejar. Acho que o ponto fundamental disso é basicamente o consumo de recursos. O terminal gnome e outros vêm com ambientes de desktop geralmente, então eles usam muito mais memória RAM que poderia ser insignificante em um computador relativamente novo, mas em um computador de certa idade, qualquer economia sem remover a funcionalidade é algo a se considerar

  5.   Pandev92 dito

    MHH parece interessante

    1.    freebsddick dito

      Pessoas que costumam ter terminais espalhados em sua mesa e que também têm pouco espaço para utilizá-lo adoram esses tipos de ferramentas .. !! Além disso, se você usar um ambiente como o i3, que é um gerenciador do tipo cascata, você pode aproveitar muito isso porque economiza muito espaço na área de trabalho.

  6.   Saito dito

    Muito interessante a verdade e já o usei algumas vezes, mas olhando para desempenho, peso (dependências do programa) e facilidade, sempre acabo voltando para «terminator» que é um terminal com multiplexador incluído e guias também, e faz o mesmo para mim, posso até salvar perfis e tudo mais, posso abrir links sem a necessidade de um add-on como o urxvt, você deveria tentar ...

    Isso não significa que o Urxvt seja bonito, mas sim pelo conforto e facilidade do Terminator.

    Observe se alguém quiser a configuração do Terminator, não hesite em me perguntar 🙂

    1.    freebsddick dito

      No tmux também existem essas características .. Se for por causa da quantidade de programas posso ter certeza que apenas baixando o Tmux você não precisa de mais nada! Atualmente possuo várias máquinas sem ambiente gráfico inclusive executando diversos serviços em paralelo. O consumo de recursos é muito importante para mim, já que os computadores nos quais uso o tmux têm mais de 10 anos. Em relação ao emulador de terminal em particular, geralmente uso zsh como console padrão + urxvt. A questão é que o Tmux pode salvar as sessões do que você está fazendo sem nenhum problema para retomá-las a qualquer momento que você quiser. E quanto às abas você deve saber que apenas ativando as abas no uxrvt você já terá essa função .. Claro que você deve levar em consideração que não é que eu vá explicar tudo de uma vez, seria muito longo para um postagem introdutória É por isso que vou dividir em partes.

      Se você quiser conferir o que eu falo, basta ir ao documento oficial, garanto que encontrará todas essas características que costuma utilizar com as ferramentas que comento. Felicidades…

    2.    eliotime3000 dito

      Eu já instalei. Agora, estou seguindo o tutorial. Obrigado pelo aviso, pois não preciso mais necessariamente instalar o ratpoison.

  7.   maxixe dito

    Outra coisa para tentar e aprender; a contribuição é apreciada, embora por enquanto com o Konsole no KDE eu esteja indo bem.

  8.   eliotime3000 dito

    Boa ferramenta, embora também seja válido usar RatPoison de vez em quando para trabalhar.

    Até agora, a ferramenta mais KISS e mais fácil de usar.

  9.   @Jlcmux dito

    Oi. Você pode editar o tmux para que o console tenha cores. e tudo isso que editamos quase tudo no .bashrc?

  10.   Saito dito

    Se o que você me diz é verdade, apenas como eu disse para facilidade e conforto, Terminator é melhor, um exemplo:

    Como você divide o terminal em 2 partes horizontais
    Control + be a tecla Espaço

    Como você muda para os terminais conectados:
    Control + até a seta de direção

    Como faço para dividir o terminal em 2 partes horizontais:
    Control + Seta para Baixo

    Como uma chave entre os terminais conectados:
    Alt + seta de direção

    Aquele mais um passo que precisa ser feito com o tmux é que das duas vezes que testei bem acabo voltando ao terminator para essa comodidade, além do fato de a configuração não ser tão longa como no caso do Urxvt + Tmux

    E como eu disse claro que essa configuração é linda, se ao menos eu pudesse configurá-la da mesma forma que aquele terminador me aconteceu na hora, o que eu não consegui (talvez por preguiça de configurar, ou porque talvez eu tenha feito errado )

    Boa explicação no post !!!!

    PS: Gosto que seu desktop seja fluxbox, certo ???

    1.    freebsddick dito

      Bom imagino que já seja uma questão de gosto .. por exemplo procuro simplicidade e realmente vejo o uso desses dois elementos extremamente simples, teria que fazer um post para descrever os motivos. Talvez eu tenha um pouco menos tendência para usar o mouse.
      Se for fluxbox configurado com poucos elementos ..

      lembranças

  11.   tmux dito

    para facilidade e conveniência, você tem o tmux, o mapeamento das teclas pode ser atribuído ao que você canta.

    Você também pode criar um socket e compartilhar sessões, e se você quiser algo que pré-configure o ambiente ou estabeleça permissões para o socket, você tem scripts como tmuxinator para gerenciar projetos e wemux para compartilhar sessões. E nesse aspecto o terminator é insuficiente, além de consumir mais recursos que o tmux.

    1.    Saito dito

      Como eu disse, o terminador é mais fácil e confortável devido à maneira como você configura os atalhos de teclado, não consegui configurá-lo para ser dividido diretamente com (Control + Seta), mas sim sempre que o utilizo está (Control + z + Arrow), é assim que eu poderia configurar pelo menos a meu ver, parece mais um passo, mas como "freebsddick" disse é mais uma questão de gosto, não vou fazer uma comparação entre tmux e terminator, que como diz "msx" terminator é um terminal gráfico, é claro que vem com um multiplexador incluso ao contrário do tmux que você pode usar sob um tty

  12.   msx dito

    Para todos aqueles que comparam tmux com o resto dos terminais gráficos:

    TMUX NÃO É UM TERMINAL, É UM MULTIPLEXADOR DE TERMINAIS TTYs / VTYs

    A principal diferença é que, embora Terminator, Konsole e amigos possam subdividir suas telas principais em muitas outras, eles sempre o fazem NA CAMADA GRÁFICA.

    O tmux e o GNU Screen, por outro lado, emulam um terminal de texto por si próprios, permitindo UNDOUBLE o container principal como um aplicativo em primeiro plano e continuar executando em segundo plano.

    tmux é especialmente útil quando acessamos remotamente via SSH e quando precisamos de 100% de confiabilidade ao executar certas tarefas não gráficas em ambientes gráficos que não são 100% confiáveis.

    Suponha que estejamos fazendo um backup, scp ou execução de script que vai levar horas para ser concluído e não podemos arriscar uma interrupção: o tmux vem ao resgate.
    Em vez de executar o referido script, backup ou scp diretamente de um terminal gráfico ou ter que fazer login em um tty no modo de texto, podemos invocar o tmux, iniciar a tarefa atribuída e desencaixar o terminal multiplexado no caso de não precisarmos ver o feedback do nosso comando.
    Se por alguma razão nossa sessão X travar silenciosamente, nós iniciamos uma nova sessão ou vamos para um tty, encaixamos a sessão atual do tmux e continuamos de onde estamos.

    Ou se, por exemplo, precisarmos executar uma tarefa que vai demorar algum tempo e devemos nos afastar da máquina, podemos sempre acessar a sessão em execução do tmux via SSH e continuar trabalhando a partir daí.

    O tmux é fantástico, embora com as últimas modificações que eles fizeram no Konsole eu comecei a usá-lo cada vez menos e apenas para algumas tarefas muito específicas como as que mencionei acima.

    http://i.imgur.com/L4JJI8m.png
    http://i.imgur.com/rfWjAMs.png
    http://i.imgur.com/oy5uqSN.jpg
    http://i.imgur.com/AN8guja.png
    http://i.imgur.com/og6NQBE.png
    http://i.imgur.com/JTH4SHc.jpg
    http://i.imgur.com/LaO9IUp.png
    http://i.imgur.com/fQoaKSk.png

  13.   apenas-outro-dl-usuário dito

    Dados excelentes, outro dia eu precisava de algo assim.

    1.    freebsddick dito

      Que bom que te serve .. enquanto eu tiver algum tempo publico a segunda parte 🙂

  14.   David Solorzano dito

    Um dos terminais que recomendo por ter essa característica de ser multiplexador é o terminador, recomendo
    Para instalar simples com aptitude install terminator

  15.   dragnell dito

    Que pena, no elementar não funciona, Saudações

    1.    msx dito

      O QUE!?
      No único sistema operacional elementar que instalei (Beta 2 por dia), é uma das primeiras ferramentas que instalei.

      tmux funciona até mesmo em torradeiras, se não, verifique o projeto NetBSD.

  16.   Alga dito

    Muito bom o Tmux muito parecido com o Terminator, embora eu esteja acostumado a usar screen 🙂

  17.   lanche dito

    Você pode misturar konsole com tmux?

    1.    msx dito

      Eles não se misturam, eles se complementam, verifique as imagens do meu comentário acima.

  18.   armando dito

    O Tmux é incrível por si só e também em combinação com o Vim. Para quem usa o screen, o passo para o Tmux é direto, basta mapear ctrl para ctrl e aprender alguns comandos.

  19.   vírus dito

    tmux = Exterminador

    Fornece uma interface de linha de comando (CLI) totalmente funcional para Linux, Organizar terminais em uma grade, Abrir várias sessões em guias, Arrastar e soltar reordenamento de terminais, Muitos atalhos de teclado configuráveis, Salvar vários layouts e perfis nas preferências, Digitação simultânea em grupos arbitrários de terminais, estilo visual personalizável.

  20.   Louis dito

    Excelente, tem me servido muito.

  21.   cartões comerciais dito

    Muito obrigado pela contribuição