GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Verhindern, dass Tmux auf Ssh startet?

Ich möchte tmux um ein neues Fenster zu erstellen, wenn ich von einer bestehenden tmux-Sitzung auf eine Maschine ssh. Ich möchte jedoch nicht, dass eine tmux-Sitzung auf dem neuen Rechner gestartet wird!

Ich habe Folgendes in meiner .bashrc , sodass tmux startet automatisch:

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

Ich habe auch ein ssh Funktion:

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
}

Dies funktioniert in Ordnung, aber ich möchte nicht, dass eine tmux-Sitzung auf dem Computer gestartet wird, zu dem ich ssh, da dies mir 2 Sitzungen im selben Terminalfenster gibt. Gibt es irgendetwas, das ich in meine .bashrc einfügen kann? damit tmux auf einer Maschine nicht startet, wenn der ssh-Befehl von einer tmux-Sitzung aus aufgerufen wurde?

Ich verwende PuTTY und tmux 1.5.

Akzeptierte Antwort:

In Anbetracht des von Ihnen geposteten Codes haben Sie $TERM, wenn Sie ssh innerhalb von tmux ausführen =screen , sodass Sie nicht versuchen, an ein tmux-Fenster anzuhängen. Mit anderen Worten, der Code, den Sie bereits haben, sollte wie gewünscht funktionieren. Da ist was faul. Stellen Sie sicher, dass Ihre Punktdateien den TERM nicht durcheinander bringen Variable (wenn Sie TERM ändern müssen , was sehr selten vorkommt, stellen Sie sicher, dass Sie dies nur unter ganz bestimmten Umständen tun; Ändern Sie es insbesondere nicht, wenn es sich um screen handelt ).


Linux
  1. Verhindert, dass die aktuell ausgeführte Linux-Aufgabe nach dem Abmelden von SSH beendet wird

  2. So verhindern Sie, dass ein Prozess Dateien schreibt

  3. Starten der Netzwerkverbindung von der Ubuntu-Wiederherstellung?

  4. Verhindern Sie, dass SSH seine Versionsnummer ankündigt

  5. Wie man SSH Bruteforce stoppt/verhindert

Telnet vs. SSH:Wie unterscheidet sich SSH von Telnet?

So verhindern Sie ein Timeout von SSH

So verhindern Sie, dass SSH-Verbindungen aufgrund von Inaktivität getrennt werden, wenn Sie MobaXterm verwenden

So verhindern Sie, dass SSH die Verbindung trennt, wenn es eine Weile inaktiv war

SSH von A über B nach C, mit privatem Schlüssel auf B

Wie konfiguriere ich D-Bus und SSH X-Forwarding, um zu verhindern, dass SSH beim Beenden hängen bleibt?