tmuxがシェルセッションごとに一度だけ接続できるのはなぜですか?

tmuxがシェルセッションごとに一度だけ接続できるのはなぜですか?

ストレスラック内の複数のボックスを監視するために、Fedora 8サーバー(作業場の制限)でtmuxを使用しています。tmux sessionシェルセッションごとに一度だけ分離に接続できることがわかりました。再接続するには、ターミナルセッションを終了して別のセッションを開始する必要があります。そうでなければ、コマンドはattach中断されます(ただし、中断されたコマンドから切り離されたにもかかわらずCtrl)。bd

前にこのような行動を見た人はいますか?どんな指針や参考資料でも大変感謝いたします。

ベストアンサー1

私のシェルの設定ファイル(私はzshを使用しているので、.zshrcにあり、.bashrcで動作する必要があります)には次のものがあります。

# Default to TMUX
if [ -z "$TMUX" ]; then
  base_session=$USER"_session"
  # Create the base session if it doesn't exist
  tmux has-session -t $base_session || tmux new-session -d -s $base_session
  # Get a count of clients connected
  client_cnt=$(tmux list-clients | wc -l)
  if [ $client_cnt -ge 1 ]; then
    # Make a unique session name
    session_name=$base_session"-"$client_cnt
    # Create the new session based on the base_session
    tmux new-session -d -t $base_session -s $session_name
    # Launch the connection with a few caveats (kill the session when the client goes away)
    tmux -2 attach-session -t $session_name \; set-option destroy-unattached
  else
    tmux -2 attach-session -t $base_session
  fi
fi

PuTTYを使用してサーバーに複数回接続し、すべてのウィンドウで同じセッションを表示できるようになりました(そして1つの接続を変更して別のウィンドウを表示します)。私はやりすぎ

編集する

アイデアこれは以前に一度動作していましたが、まだそこにいる必要があることがわかったので、screen別のセッションのためにこの問題を修正しました。コメントを残しましたが、ご質問があれば教えてください。今、欠点があります。両方のウィンドウの最小サイズを選択します。役に立ちません...現在の解決策を見つけようとしています。

編集2

サイズ変更の問題を解決するには、.tmux.confファイルに次の行を追加します。

set-option -g aggressive-resize on

おすすめ記事