Como hospedar vários terminais Linux para visualização e colaboração com Wemux

Como hospedar vários terminais Linux para visualização e colaboração com Wemux

Em um artigo anterior, explicamos como usar o TMUX (Multiplexador Terminal), para acessar e controlar vários terminais (ou janelas) de um único terminal.

Agora vamos apresentá -lo a Wemux (uma versão multi-usuária de tmux), que não apenas inclui os recursos fornecidos por tmux, mas também permite que os usuários hospedem um ambiente multi-terminal, onde os clientes possam participar do modo de visualização ou colaboração.

Wemux View Linux Terminal Sessão

Em outras palavras, você pode sediar uma sessão em que outras pessoas podem ver o que você faz no terminal (para executar uma demonstração, por exemplo) ou colaborar com eles.

Para ajudá -lo a aproveitar ao máximo Wemux, Eu recomendo que você dê uma olhada no guia anterior sobre tmux antes de passar pelo presente artigo.

Instalação e configuração do terminal multiususer Wemux

Como um pré -requisito antes de instalar Wemux, Usaremos o Git para clonar o repositório do projeto em nosso sistema local. Se o seguinte comando mostrar que git não é encontrado em seu sistema:

# qual git 

Conforme indicado por:

/usr/bin/qual: nenhum git em (/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin) 

Instale -o antes de proceder (use yum ou aptidão dependendo da sua distribuição):

# yum instalar git [em Chapéu vermelho sistemas baseados] # dnf install git [on Fedora 22+ versões] # aptitude install git [on Debian sistemas baseados] 

Então,

1. Clone o repositório remoto.

# git clone git: // github.com/zolrath/wemux.git/usr/local/share/wemux 

2. Criar um vínculo simbólico para o Wemux executável dentro /usr/local/bin ou outro diretório em seu $ Caminho variável.

# ln -s/usr/local/share/wemux/wemux/usr/local/bin/wemux 

3. Copie o arquivo de configuração da amostra de configuração para /usr/local/etc.

# cp/usr/local/share/wemux/wemux.conf.exemplo/usr/local/etc/wemux.conf 

E insira a seguinte linha:

host_list = (user1 user2 user3) 

onde usuário1, usuário2, e usuário3 são usuários que têm permissão para começar Wemux servidores. Você pode adicionar quantos usuários forem necessários separados por espaços. Outros usuários poderão se conectar a um servidor Wemux em execução, mas não terão permissão para iniciar um.

Introdução ao terminal multiusuário Wemux

Para simplificar as coisas, lembre -se de que você pode pensar Wemux como uma ferramenta que facilita a visualização do console e a colaboração mútua no mesmo tmux sessão.

Conforme explicado anteriormente, no arquivo de configuração (/usr/local/etc/wemux.conf), você deve já ter indicado quais usuários poderão iniciar um Wemux servidor, ou em outras palavras, um tmux sessão em que outros usuários poderão anexar. Nesse contexto, esses “Usuários”São chamados de clientes.

Para resumir:

  1. Servidor Wemux: uma sessão de tmux.
  2. Clientes Wemux: Usuários que ingressam na sessão TMUX descrita acima.

Estes são os comandos que são usados ​​para gerenciar Wemux servidores:

  1. Wemux ou Wemux Start: inicia um novo servidor wemux (se não existe; caso contrário, cria um novo) e cria um soquete em /TMP/WEMUX-WEMUX cujas permissões precisam ser definidas para 1777 para que outros usuários possam se conectar ou se conectar a ele:
  2. # chmod 1777 /tmp /wemux-wemux 
  3. Wemux Anex Volte a um servidor Wemux existente.
  4. Wemux Stop mata o servidor Wemux e remove o soquete criado anteriormente. Este comando precisa ser executado de um terminal separado. Como alternativa, você pode usar o shell de saída construído para fechar painéis e, eventualmente, retornar à sua sessão de concha regular.
  5. Wemux Kick Nome de usuário Livre -se do usuário atualmente conectado via SSH no servidor Wemux e remove suas sessões desonestas (mais sobre isso em um minuto). Este comando exige que o servidor Wemux tenha sido iniciado como root ou com sudo privilégios.
  6. Wemux Config abre o arquivo de configuração no editor de texto indicado pela variável de ambiente $ editor (somente se essa variável estiver configurada em seu sistema, que você pode verificar com eco $ Editor).

Todos os tmux Os comandos listados anteriormente são válidos dentro Wemux, com a vantagem que o cliente pode anexar a um Wemux servidor em um dos três modos.

Para fazer isso, execute o comando encontrado no COMANDO coluna abaixo em um “cliente em potencial“, Por assim dizer (ele se tornará um cliente real depois de ingressar no servidor Wemux):

Modo Descrição Comandos
Espelho Somente leitura, não interativa Wemux Mirror
Par Interativo, o cliente compartilha o cursor com o servidor Par Wemux
Por conta própria Junta -se a uma sessão existente, mas permite que o cliente use janelas independentes Wemux Rogue

Vamos dar uma olhada no seguinte screencast para uma breve demonstração dos três modos de cliente descritos na tabela acima (mesma ordem). Observe que usei o Terminator para iniciar o servidor (como usuário Gacanepa) no painel esquerdo e conecte um cliente (como teste de usuário) no painel direito.

Assim, você pode ver facilmente como um Wemux O servidor funciona enquanto interage com um cliente. Ao repetir o processo usado por um cliente para ingressar em um servidor Wemux, você pode ter vários clientes fazerem o mesmo simultaneamente.

Outras características do terminal Wemux

Se os parágrafos acima não lhe deram motivos suficientes para dar Wemux uma tentativa, espero que os seguintes recursos o convencam.

Usuários que podem começar Wemux servidores (conforme o host_list diretiva em /usr/local/etc/wemux.conf arquivo) pode hospedar várias sessões simultaneamente se o allow_server_change A diretiva está definida como true:

allow_server_change = "true" 

Para iniciar duas sessões nomeadas la e EMEA, Execute os seguintes comandos em dois terminais diferentes:

# wemux ingressar la && wemux start # wemux junção emea && wemux start 

Novamente, vamos usar Exterminador do Futuro Para ver os dois terminais ao mesmo tempo (isso é semelhante ao que você poderia esperar, mudando para diferentes consoles com Ctrl+Alt+F1 através F7):

IMG 01: Veja dois terminais Linux

Depois de pressionar Digitar, Ambas as sessões são iniciadas separadamente:

IMG 02: Inicie várias sessões de terminal do usuário

Então você pode fazer com que um cliente participe de uma sessão com:

# wemux junção la && wemux Anex ou # wemux junção emea && wemux anexo 

Finalmente, para ter um usuário remoto (conectando via SSH) iniciar automaticamente no Wemux após o logon e desconectá -lo do servidor quando eles se destacarem, anexar a seguinte estrofe ao seu ~/.Bash_profile arquivo:

wemux [modo]; saída 

onde [modo] é um dos modos de cliente listados anteriormente.
Como alternativa, um cliente pode mudar de um servidor para outro usando:

# saída # wemux junção [nome do servidor aqui] && wemux [modo] 

Resumo

Neste artigo, explicamos como usar Wemux Para configurar a visualização remota do seu terminal (e até a colaboração mútua) com muita facilidade. Sendo liberado sob a licença do MIT, o Wemux é um software de código aberto e você pode personalizá -lo de acordo com suas necessidades.

O código -fonte é encontrado no Wemux Github e disponível em seu sistema em /usr/local/bin/wemux. No mesmo repositório do GitHub, você pode encontrar mais informações sobre este programa.

Você achou este artigo útil? Por favor, deixe -nos saber o que você pensa usando o formulário abaixo.

Referência: https: // github.com/zolrath/wemux