segfaults do tmux na chave de envio após a atualização para 2.9a

segfaults do tmux na chave de envio após a atualização para 2.9a

Acabei de atualizar um servidor Ubuntu de 18.10 para 19.04 e depois para 19.10. Eu acho que essa atualização também atualizoutmux para uma versão mais recente.

Desde então meutmux scripts, que constroem alguns dashboards, não funcionam mais.

Ao emitir um comando como

tmux send-keys "echo 'test'" C-m;

Eu recebo umlost server mensagem.

Isso acontece quando nada foi anexado à sessão que contém o painel que está sendo direcionado.

Quando eu inicio uma sessão e me anexa a ela, entãosend-keys funciona.

O syslog contém a seguinte entrada

12 de março 23:27:33 kernel da máquina: [27.074805] tmux: servidor [2657]: segfault em 751 ip 000056042469f029 sp 00007ffe602aa6f0 erro 4 em tmux [560424675000 + 62000]

É assim que meu script de criação se parece, ele é invocado crontabcomo @reboot, mas o problema também existe ao executá-lo manualmente.

SESSION=stuff

tmux new-session -d -s $SESSION -n 'homepage'
tmux split-window -h -p 50
tmux select-pane -t 1; tmux send-keys "./lhp.sh" C-m;
tmux select-pane -t 2; tmux send-keys "./lnginx.sh" C-m;
tmux split-window -v -p 50
tmux select-pane -t 3; tmux send-keys "./lsmr.sh" C-m;

tmux new-window -t $SESSION -n 'shells'
tmux split-window -h -p 50

tmux select-window -t :1;

E em algum momento posterior (horas ou dias) eu invoco

tmux attach-session -t stuff

para visualizar o conteúdo.

Alguém sabe que posso continuar usando como antes?

Responder1

Se eu substituir seus scripts "./l*" por "sleep 10", o script não trava com o tmux 3.1-rc, então isso é um bug no 2.9a ou o problema está em um dos seus scripts.

Claro, o script também não funciona - você não pode misturar new -te -n. Você quer dizer -sem vez de -t? E você provavelmente precisará adicionar-d ou o restante do script não será executado. Além disso, os números dos painéis estão errados - você divide apenas uma vez, mas direciona os painéis 1 e 2 quando existem apenas 0 e 1. Suspeito que este não seja o script que você está realmente usando.

De qualquer forma, o tmux 2.9a não é mais suportado, então sua melhor aposta é construir o tmux 3.0a ou 3.1-rc e ver se o problema ainda existe. Se isso acontecer, você pode abrir um problema emhttps://github.com/tmux/tmux/issues, de preferência com o script que você realmente está usando e alguns arquivos de log do tmux.

Responder2

Este é um bug no tmux.

O problema está sendo rastreado aquihttps://bugs.launchpad.net/ubuntu/+source/tmux/+bug/1847484e esse é referenciado aquihttps://github.com/tmux/tmux/issues/1980

A correção é de baixa prioridade, pois é um problema de “configuração incorreta”, portanto ainda existe em pelo menos 3.0-rc5.

Basicamente é este problema:

Portanto, a falha parece ocorrer ao enviar pressionamentos de tecla para um quadro que ainda mostra mensagens de erro ao analisar a configuração.

Portanto, você precisa garantir que possui um tmuxarquivo de configuração válido que não gere erros, como

.tmux.conf:33: invalid option: pane-border-fg

informação relacionada