GNU/Linux >> Linux の 問題 >  >> Linux

TmuxがSshで起動しないようにしますか?

tmuxが欲しいのですが 既存のtmuxセッションからマシンにSSH接続したときに新しいウィンドウを作成します。ただし、新しいマシンでtmuxセッションを開始したくありません!

.bashrcに次のものがあります 、そのため tmux 自動的に起動します:

if [[ "$TERM" != "screen" ]]
then
   # try to attach to existing session, or start a new one
   tmux attach-session -t "$USER" || tmux -2 new-session -s "$USER"
   exit
fi

sshもあります 機能:

alias ssh='ssh_func'
ssh_func (){
    if [[ "$TERM" == "screen" ]]; then
        tmux new-window -n "$1" "ssh [email protected]";
    else
        /usr/bin/ssh "[email protected]";
    fi
}

これは問題なく動作しますが、同じターミナルウィンドウで2つのセッションが得られるため、sshを実行するマシンでtmuxセッションを開始したくありません。 .bashrcに入れることができるものはありますか sshコマンドがtmuxセッションから呼び出された場合に、マシン上でtmuxが起動しないようにしますか?

PuTTYとtmux1.5を使用しています。

承認された回答:

投稿したコードを前提として、tmux内からsshを実行すると、 $ TERMが作成されます。 =画面 、したがって、tmuxウィンドウに接続しようとはしません。つまり、すでに持っているコードは希望どおりに機能するはずです。何か怪しいことが起こっています。ドットファイルがTERMを台無しにしないようにしてください 変数( TERMを変更する必要がある場合 、これは非常にまれですが、非常に特殊な状況でのみ実行するようにしてください。特に、 screenの場合は変更しないでください 。


Linux
  1. AndroidからLinuxでSSH接続する方法

  2. Ssh – Ssh / scp / sftpユーザーをディレクトリに制限しますか?

  3. シェルがSshから制御されているかどうかを検出する方法は?

  1. コマンドの完了時にペイン/ウィンドウが閉じないようにする– Tmux?

  2. SSH からのログアウト後に、現在実行中の Linux タスクが強制終了されないようにします

  3. Ubuntu リカバリからネットワーク接続を開始しますか?

  1. Ubuntu 20.04 での SFTP のセットアップと SSH の防止

  2. SSH がバージョン番号を通知しないようにする

  3. SSH ブルートフォースを停止/防止する方法