Use várias sessões byobu, ignorando sessões tmux não relacionadas

7

Então, eu tenho acesso a uma conta de shell compartilhada onde outras pessoas e eu fazemos algum trabalho.

Algumas pessoas preferem usar tmux, então eles abrem suas sessões tmux, carregando config de ~/.tmux.conf . Eu prefiro usar o byobu wrapper em torno do tmux, já que ele tem atalhos de teclado e outras coisas muito mais agradáveis.

O problema é que sempre que uma sessão do tmux é usada por outras pessoas, sempre que eu executo o byobu, ela continua sua sessão do tmux em vez de criar uma nova sessão de byobu para mim.

Então, eu tentei executar o byobu-tmux new-session , mas depois ele inicia uma nova sessão do tmux usando sua configuração (de ~/.tmux.conf ) ao invés de byobu.

Como posso resolver isso?

    
por elias 21.05.2014 / 18:54

1 resposta

9

O programa tmux foi projetado para ser executado como um processo de servidor único que gerencia uma ou mais sessões independentes. O arquivo de configuração é carregado pelo processo do servidor quando é iniciado e aplicado a novas sessões quando elas são criadas. A execução de tmux new-session (ou, equivalentemente, neste caso, byobu new-session ) contata o servidor em execução, se houver um, e solicita que ele crie uma nova sessão. O servidor usa um caminho conhecido para seu soquete com base apenas no UID do usuário, e isso é tudo o que é necessário para se conectar a um servidor tmux em execução. Portanto, é por isso que, se uma sessão tmux "normal" já estiver em execução, o byobu se anexará ou criará uma nova sessão usando esse servidor.

De acordo com a página do manual do tmux , você pode simplesmente alterar o soquete usado pelo tmux para iniciar dois servidores tmux independentes, cada um com seus próprios conjuntos de configuração, se desejado. Você pode especificar -L para alterar o nome base do soquete ou a opção -S para especificar um caminho completamente diferente para o arquivo de soquete. O soquete padrão do tmux é denominado default .

Então, usando estas opções do tmux ao chamar byobu, para iniciar um servidor tmux independente com byobu, você pode executar

byobu -L my-byobu new

ou

byobu -L my-byobu attach

em que o nome my-byobu pode ser substituído por qualquer nome de sua escolha. Isso inicia um novo servidor tmux com o nome my-byobu , que carrega a configuração do byobu para o tmux em vez do padrão, e efetivamente cria um namespace independente para suas sessões byobu tmux.

    
por Mike Miller 21.05.2014 / 19:33

Tags