Fedora のローカル空間にソースから tmux をインストールしました。これまでのところうまく機能していました。しかし、突然実行できなくなり、tmux を実行すると停止します。ls-sessions などのさまざまなコマンド オプションを試しましたが、どれも機能しません。ユーザーのすべてのプロセスを強制終了し、tmux と のすべてのファイルを削除し、libevnet
最初から再インストールしました。それでも同じで、ターミナルの tmux コマンドは実際のエラーなしでフリーズします。
8 に答える
私は長い間この問題に直面していましたが、少し検索した後、誤って + を押したことが原因であることがわかりましたCtrl( S+ Ctrl+AはSペインを切り替えるためのショートカットです)。これにより、ターミナルのフロー制御がオフになり、端末が入力を受け付けないようにします。Ctrl+を押すと再度有効にできますQ。
同じ問題がありました。原因はtmux
バッファがいっぱいになっていることと、tmux
セッションに複数のクライアントが接続されていることが原因である可能性があります。
これを解決するには、すべてのクライアントをセッションから切り離し、再度接続する必要があります。
それを解決するために私が見つけた最良の方法は、~/.bashrc
この関数をファイルに追加することです:
check_params() {
if [[ $1 < $2 ]]; then
echo -e "Usage:\n${3}"
ok=0
else
ok=1
fi
}
# detach all the clients from this session, and attach to it.
reattach_client() {
check_params $# 1 "reattach_client <tmux_session_name>"
if [[ $ok == 1 ]]; then
tmux list-client | grep $1 | awk '{split($1, s, ":"); print s[1]}' | xargs tmux detach-client -t | true
tmux attach -t $1
fi
}
次に実行source ~/.bashrc
して、ターミナルでこれらの変更を行います。
セッションタイプをアタッチするには:
reattach_client <session_name>
私の問題を解決しました。
これを手伝ってくれた Alex Zelichenko に感謝します!
これらのテストのいくつかを使用して、問題を少し絞り込むことができるはずです。
X11の外部から撮影してください:++ Ctrl(または別のコンピューターから使用)AltF2
ssh
他のターミナルエミュレータが機能するかどうかをテスト
script
します。screen
別の複雑なターミナルアプリケーションを試してください:
htop
およびmc
TTY設定をリセットします。
stty sane
端末が識別されていることを確認します:(
echo $TERM
「xterm」または「linux」のようなものである必要があります)ターミナル機能ファイルが存在することを確認します。
ls -lh /usr/share/terminfo/*/$TERM
ありがとう。問題が見つかりました。tmux プロセスは D 状態で、システムを再起動するしかありませんでした。問題は、しばらくして期限切れになる kerberos チケットから発生しました。そして、この問題を解決するスクリプトを見つけてください: https://iain.cx/src/ktmux/
(tmux プロセスを強制終了する前に試行する) それほど劇的でないアクションは、マシンに ssh して次のコマンドを実行することです。
kill -CONT `pidof tmux`
ソース: https://github.com/tmux/tmux/issues/507#issuecomment-271502093