TMUX ist eine nette Alternative zu Screen, es unterstützt per Default das Teilen eines Fensters horizontal oder/und vertikal.
Installation von TMUX
#Für Ubuntu / Debian: apt install tmux #Für Fedora / RedHat / CentOS: yum install tmux
Tastenkürzel (Hotkeys)
Hotkey | Bedeutung |
---|---|
CTRL-B ? | Anzeiger aller Hotkeys |
CTRL-B D | (detatch) Trennen der aktuellen Sitzung |
CTRL-B S | (switch) Wechseln zwischen verschiedenen Sitzungen |
CTRL-B C | (create) Neues Fenster |
CTRL-B & | Beenden des Fensters |
CTRL-B , | Umbennennen des Fensters |
CTRL-B " | Fenster horizonal Teilen |
CTRL-B % | Fenster vertikal Teilen |
CTRL-B Pfeiltasten | Wechseln zwischen den Panes (Fensterscheiben) |
CTRL-B W | Liste aller Fenster anzeigen |
CTRL-B [SPACE] | Pane Größe ändern |
CTRL-B L | (last) Wechseln zum letzen Fenster, ist mit einem Minus markiert |
CTRL-B P | vorheriges Fenster |
CTRL-B N | nächstes Fenster |
CTRL-B 1... | Wechsel zu Fenster Nr. |
CTRL-B ! | Pane Lösen und neues Fenster |
per SSH direkt in tmux Sitzung starten
Praktisches Feature wenn man seine Sitzung nicht verlieren möchte bei einem Verbindungsabriss. Dazu muss die .bashrc des Users angepasst werden.
Einfach am Ende folgendes einfügen:
if [[ -z "$TMUX" ]] && [ "$SSH_CONNECTION" != "" ]; then tmux attach-session -t ssh_tmux || tmux new-session -s ssh_tmux fi
tmux Scripting
Man kann auch ganz Easy sich eigene Umgebungen scripten.
Hier ein angepasstes Beispiel von ubuntuusers.de (https://wiki.ubuntuusers.de/tmux/):
#!/bin/bash SESSION=main tmux="tmux -2" # if the session is already running, just attach to it. $tmux has-session -t $SESSION if [ $? -eq 0 ]; then echo "Session $SESSION already exists. Attaching." sleep 1 $tmux attach -t $SESSION exit 0; fi # create a new session, named $SESSION, and detach from it $tmux new-session -d -s $SESSION $tmux new-window -t $SESSION:0 $tmux rename-window -t $SESSION:0 "Default SHELL" $tmux split-window -h -t $SESSION:0 $tmux new-window -t $SESSION:1 "tail -f /var/log/syslog" $tmux rename-window -t $SESSION:1 "SYSLOG" $tmux new-window -t $SESSION:2 "top" $tmux rename-window -t $SESSION:2 "TOP" $tmux new-window -t $SESSION:3 "tail -f /var/log/mail.log" $tmux rename-window -t $SESSION:3 "MAILLOG" $tmux split-window -h -t $SESSION:3 $tmux new-window -t $SESSION:4 "tail -f /omd/sites/dev1/var/log/cmc.log" $tmux rename-window -t $SESSION:4 "CMCLOG" $tmux select-window -t $SESSION:0 $tmux attach -t $SESSION