Um beim Login via ssh sofort in einer tmux Session zu landen habe ich folgendes in meine .bashrc auf dem Zielhost eingefügt:
case $- in *i*) if command -v tmux>/dev/null; then if [[ ! $TERM =~ screen ]] && [[ -z $TMUX ]]; then if tmux ls 2> /dev/null | grep -q -v attached; then exec tmux attach -t $(tmux ls 2> /dev/null | grep -v attached | head -1 | cut -d : -f 1) else exec tmux fi fi fi ;; esac
Sehr praktisch falls die Verbindung nicht stabil oder die bash_history deaktiviert ist.
Man kann auch
ssh 123.123.123.123 -t tmux a
nutzen, falls eine tmux Session vorhanden ist bzw. „tmux“ falls keine.
Die .bashrc Lösung ist aber natürlich etwas eleganter.
Link: https://stackoverflow.com/a/42351698