tmux - это терминальный мультиплексор (terminal multiplexer). Терминальный мультиплексор - это приложение, которое способно объединять несколько сессий в одном псевдо-графическом интерфейсе.
Главные возможности tmux:
Сохранность текущей сессии
По умолчанию, все интерактивные сессии посылают сигнал SIGHUP всем процессам запущенным в текущей сессии при отключении. Если произошёл обрыв связи, то все команды которые вы запускали завершатся раньше ожидаемого времени выполнения.
При первом запуске мультиплексор создаёт отдельную сессию, которая не привязана к вашему соединению. Например, вы можете отключиться от SSH, но сессия будет активна на сервере. Затем вы можете вернуться на сервер и вернуться в сессию с помощью команды:
tmux attach
или с указанием имени сессии:
tmux attach -t name
sudo yum install -y tmux
sudo apt install tmux
sudo pacman -S tmux
tmux new -s name
tmux отобразит пустой терминал на подобие такого:
Для использования команд нужно использовать комбинацию-префикс.
По умолчанию, префикс - ctrl+b
.
Например, чтобы создать новое окно, нажимаем ctrl+b
, затем отпускаем и нажимаем c
.
Комбинация: prefix, c
.
Вперёд: prefix, n
Назад: prefix, p
Переключение по номеру окна: prefix + N
, где N
- это номер окна.
Комбинация: prefix, "
Например, можно разместить сверху вывод htop
, а снизу vmstat
:
На верхнее: prefix, up
На нижнее: prefix, down
На то что слева: prefix, left
На то что справа: prefix, right
Комбинация: prefix, ctrl + up\down
Комбинация: prefix, {
или prefix, }
Комбинации: prefix, (
и prefix, )
Комбинация: prefix, ?
Согласно man tmux
, tmux загружает настройки из /etc/tmux.conf
, а затем смотрит файл в домашней
директории текущего пользователя ~/.tmux.conf
.
После изменений в файлах конфигурации необходимо перечитать настройки:
tmux source-file /etc/tmux.conf
Кому-то может быть неудобной комбинация Ctrl + b
, поэтому её можно поменять. Например, на Ctrl + a
:
unbind C-b set-option -g prefix C-a bind-key C-a send-prefix
По умолчанию, разделение экрана по горизонтали prefix, "
, по вертикали - prefix, %
.
Это не совсем интуитивные клавиши, проще использовать клавиши: -
и |
.
Как поменять комбинации:
bind | split-window -h bind - split-window -v unbind '"' unbind %
Переключение между панелями одна из самых частых операций в tmux. Переключаться с использованием префикса неудобно.
Удобней использовать Alt + стрелка
. Как это настроить:
bind -n M-Left select-pane -L bind -n M-Right select-pane -R bind -n M-Up select-pane -U bind -n M-Down select-pane -D