Tmux (ти-макс) — это менеджер терминалов, который позволяет работать с несколькими сессиями в одном окне. То есть вместо нескольких открытых окон терминала — вы используете одно, которое можно делить на несколько окон.
Как побочный эффект, при работе через SSH, использование tmux позволяет сохранять состояния подключений и процессов.
После разрыва соединения с сервером вы подключаетесь, и все запущенные программы и процессы продолжают работать.
Дополнительно можно работать совместно с другими в терминале, если все подключены к одной сессии.
Устанавливается Tmux из стандартных репозиториев Linux:
apt-get install tmux
После установки рекомендуем сразу отредактировать конфигурационный файл ти-макса (/etc/tmux.conf) и внести следующие изменения:
set -g mouse on
Эта строчка кода позволит свободно перемещать границы разделения окон с помощью курсора мышки.
Для работы с ти-миксом используется широкий набор горячих клавиш, состоящих из базового сочетания Ctrl + b и отдельных целевых клавиш (n,p,w,b и т.д.).
Для создания рабочей сессии без идентификатора — достаточно ввести tmux в терминале. Будет создана сессия 0: Идентификатор сессии отображается внизу слева в квадратных скобках. Для создания именной сессии достаточно ввести следующую команду:
tmux new -s название сессии
Поскольку ти-макс завершает соединение с сохранением состояния сессии, правильным способом возобновить работу ти-макса будет его запуск командой:
tmux attach || tmux new
Команда запускает проверку уже созданных сессий и если активных подключений нет — создается новое подключение.
Просмотреть список созданных сессий можно командой:
tmux ls
Команда вернёт список следующего вида:
0: 1 windows (created Mon Aug 30 13:02:31 2021) (attached)
Если в списке одна сессия, то командой tmux attach она будет автоматически восстановлена, а если в списке несколько сессий — необходимо ввести следующую команду:
tmux attach -t наименование сессии
В нашем случае сессия называется 0.
Сменить сессию можно также, находясь в другой сессии. Для этого нужно воспользоваться сочетанием клавиш Ctrl + b, s.
Выйти из сессии можно с помощью сочетания клавиш Ctrl + b, d. А завершить сессию командой:
tmux kill-session -t название сессии
Закрыть все сессии можно командой:
tmux kill-server
Чтобы создать окно — применяется сочетание клавиш: CTRL + b, а затем c. Просмотреть список окон можно сочетанием — CTRL + b, а затем w. Выбор конкретного окна из списка осуществляется стрелками ↑ и ↓.
Переключиться между окнами можно с помощью следующих сочетаний клавиш:
Сессионные окна ти-макс можно разделять вертикально и горизонтально. Для горизонтального разделения окна используется сочетание клавиш Ctrl + b, “ (Shift + ‘(э)).
Чтобы разделить окно вертикально на две равные панели — воспользуйтесь сочетанием клавиш Ctrl + b, %.
Перемещаться между панелями можно с помощью сочетаний клавиш Ctrl + b и стрелок.
Панели тоже можно разделять. Например, если нужно получить 3 панели, сначала окно делится горизонтально (Ctrl + b, “), затем осуществляется переход на нужную панель (Ctrl + b, ↑ или ↓) и она делится вертикально (Ctrl + b, %).
Закрыть панель (часть окна) можно с помощью сочетания клавиш Ctrl + b, x или командой exit.
Команды для управления сессиями: