hostprofi.ru
Подобрать хостинг
Термин·буква T

tmux

краткое определение

tmux — терминальный мультиплексор: позволяет создавать несколько сессий, окон и панелей в одном SSH-соединении. Процессы продолжают работу после отключения SSH.

tmux (terminal multiplexer) — программа для мультиплексирования терминала: один SSH-сеанс делится на несколько независимых окон и панелей (panes), которые продолжают работать после отключения SSH-соединения. Это решает ключевую проблему серверного администрирования: разрыв SSH не прерывает выполняющийся процесс.

Основные концепции

  • Session: изолированный набор окон, сохраняется при отключении SSH
  • Window: аналог вкладки браузера — отдельный терминал внутри сессии
  • Pane: разделение окна по горизонтали или вертикали на независимые терминалы
  • Prefix key: Ctrl+b — клавиша-модификатор перед командами tmux

Основные команды

# Создать сессию
tmux new -s deploy

# Отключиться от сессии (сессия продолжается)
Ctrl+b, d

# Список сессий
tmux ls

# Подключиться к сессии
tmux attach -t deploy

# Разделить окно вертикально
Ctrl+b, %

# Разделить горизонтально
Ctrl+b, "

# Переключиться между панелями
Ctrl+b, стрелки

# Создать новое окно
Ctrl+b, c

# Переключиться между окнами
Ctrl+b, 0-9

# Убить сессию
tmux kill-session -t deploy

История

tmux создан Николасом Рёдером (Nicholas Marriott) в 2007 году как более современная альтернатива GNU screen (1987). tmux 1.0 вышел в 2009 году. Преимущества перед screen: лучшая поддержка UTF-8, возможность вертикального разделения панелей (screen 4.1+ тоже добавил), современный API для плагинов (tpm — Tmux Plugin Manager). tmux 2.x добавил true color, 3.x — улучшил поддержку мыши и синхронизацию панелей.

tmux vs screen

Параметрtmuxscreen
Вертикальное разделениеДа (с 2007)Да (screen 4.1+)
ПлагиныTPM (Tmux Plugin Manager)Нет
Статус-строкаНастраиваемаяБазовая
Активная разработкаДаМинимальная

На что обращать внимание

На VPS tmux — стандартный инструмент для долгоживущих операций: деплой, компиляция, бэкап, обновление пакетов. Запусти долгий процесс в tmux-сессии — можно закрыть терминал, вернуться через час и найти процесс завершённым. Конфигурация tmux в ~/.tmux.conf: популярный starter — .tmux by gpakosz с преднастроенными горячими клавишами. Для совместного администрирования: несколько SSH-сессий могут подключиться к одной tmux-сессии одновременно через tmux attach -t session.

История tmux

tmux создан Николасом Уилсоном (Nicholas Marriott) в 2007 году как альтернатива GNU screen с более чистой кодовой базой и расширенными возможностями. Версия 1.0 выпущена в 2009 году. Ключевое отличие от screen: разделение экрана на панели (panes) прямоугольниками — горизонтально и вертикально. tmux 1.7 (2012) добавил поддержку мыши. tmux 2.0 (2015) — Unicode и 256 цветов. tmux 3.x (2019+) — поддержку 24-bit True Color. OpenBSD включает tmux в базовую систему с 2009 года.

Основные горячие клавиши tmux

Ctrl+b c
Создать новое окно
Ctrl+b n / p
Следующее/предыдущее окно
Ctrl+b %
Разделить вертикально
Ctrl+b "
Разделить горизонтально
Ctrl+b стрелки
Переключение между панелями
Ctrl+b d
Detach (сессия продолжает работу)
tmux attach -t 0
Переподключиться к сессии 0

На что обращать внимание

tmux — стандартный инструмент на любом VPS. Запускай долгие операции (компиляция, бэкап, миграция БД) внутри tmux: при разрыве SSH соединение не прерывается. Для персонализации: ~/.tmux.conf с set -g mouse on включает поддержку мыши. Популярный starter-конфиг — .tmux by gpakosz (github.com/gpakosz/.tmux). Альтернатива для простых задач: screen — старше и проще, но менее функционален. Для совместного администрирования: несколько SSH-сессий подключаются к одной tmux-сессии через tmux attach -t session — видят одно и то же.

Другие термины