tmux — установка, панели, окна и расширение

Быстрые ссылки
- Установка и базовое использование tmux
- Мультизадачность с панелями
- Окна в tmux
- Расширение tmux: плагины и конфигурации
Установка и базовое использование tmux
Определение в одно предложение: tmux — это утилита командной строки для управления множеством виртуальных терминальных сессий в одном окне терминала.
Установка на популярных системах:
# Debian/Ubuntu (и производные)
sudo apt-get update
sudo apt-get install tmux
# macOS (Homebrew)
brew install tmuxПосле установки запустите tmux. Это создаст сессию с автоматически сгенерированным именем. Рекомендуется создавать именованные сессии:
tmux new -s имя_сессииКогда вы внутри tmux, вы увидите строку состояния внизу. Сессия продолжит работать, даже если вы закроете физическое окно терминала или обрежете SSH-соединение.
Чтобы отсоединиться от сессии и оставить её работающей на сервере, нажмите префикс (по умолчанию Control+B), затем D:
Control+B DДля повторного подключения используйте:
tmux a -t имя_сессии
# или подключиться к последней
tmux a #
# просмотреть все сессии
tmux lsВажно: не подключайтесь рекурсивно к сессии tmux внутри другой tmux-сессии — это по умолчанию блокируется и вызывает неудобства.
Критерии приёмки (коротко):
- Устанавливается пакет tmux и запускается как
tmux new -s test. - Сессия сохраняется после закрытия терминала.
- Повторное подключение через
tmux a -t testвозвращает в ту же среду.
Важно: сочетание клавиш в описаниях использует префикс tmux (по умолчанию Control+B). Если вы меняли префикс в конфиге — применяйте свой.
Мультизадачность с панелями
Паны (panes) — это вертикальные или горизонтальные разделы внутри окна. Панели используют префикс tmux для управления.
Префикс по умолчанию:
Control+BСоздание панелей:
- Разделить вертикально:
Control+B %- Разделить горизонтально:
Control+B "Переключение между панелями:
Control+B <стрелка>Изменение размера панели (пример через командную строку tmux):
Control+B :
resize-pane -R 4resize-pane поддерживает направления U/L/D/R (up/left/down/right) и числовой аргумент — количество строк/столбцов.

Подсказки и практические приёмы:
- Включите mouse mode в конфиге, чтобы кликом выбирать панели и окна:
# ~/.tmux.conf
set -g mouse on- Чтобы быстро передать панель в другое окно или перемещать панели, используйте плагины (см. раздел о плагинах) или команды
break-pane/join-pane.
Режим копирования и буфер обмена
tmux имеет свой режим копирования (copy-mode). В нём можно выделять текст и отправлять его в системный буфер обмена (при соответствующей настройке). Пример включения доступа к буферу macOS/Linux:
# отправлять в системный буфер (требует xclip/xsel на Linux или pbcopy на macOS)
bind-key -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "xclip -selection clipboard -in"Если вы часто работаете с копированием, настройте copy-mode-vi и привяжите привычные клавиши (v/y).
Окна в tmux
Окно — это виртуальный терминал внутри сессии. В одном окне может быть несколько панелей.
Основные команды окон:
- Создать новое окно:
Control+B c- Предыдущее окно:
Control+B p- Следующее окно:
Control+B n- Переключиться по индексу 0–9:
Control+B 0
...
Control+B 9- Показать интерактивный список окон (exposé):
Control+B w
Завершение окна — команда exit в нём. Если в сессии остаётся только одно окно и вы закрываете его — tmux завершит сессию.
Принудительное закрытие окна:
Control+B &Расширение tmux: плагины и конфигурация
tmux легко расширяется через плагины и конфигурационный файл ~/.tmux.conf.
Минимальный пример ~/.tmux.conf:
# Префикс на Ctrl-a вместо Ctrl-b
set -g prefix C-a
unbind C-b
bind C-a send-prefix
# Включить мышь
set -g mouse on
# Включить vi-подобные клавиши в copy-mode
setw -g mode-keys vi
# Строка состояния (простая)
set -g status-interval 5
set -g status-left "#S "
set -g status-right "%Y-%m-%d %H:%M"Плагин-менеджер: tmux-plugin-manager (tpm). Установка и работа:
- Клонируйте tpm в
~/.tmux/plugins/tpm. - Добавьте в конфиг:
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-resurrect'
set -g @plugin 'tmux-plugins/tmux-yank'
# Инициализация плагинов
run '~/.tmux/plugins/tpm/tpm'- Внутри tmux нажмите
prefix + Iдля установки объявленных плагинов.
Рекомендуемые плагины (с кратким описанием):
- Oh My Tmux! — набор тем и удобных настроек.
- tmux-resurrect — сохраняет и восстанавливает раскладки/сессии.
- tmux-continuum — автоматическое сохранение/восстановление от tmux-resurrect.
- tmux-pain-control — дополнительные бинды для управления панелями.
- tmux-yank / tmux-better-mouse-mode — улучшенная работа с буфером и мышью.
- tmuxifier / tmuxp / tmuxinator — менеджеры проектов/окружений для сохранения конфигураций окон и панелей.
Пример восстановления с tmux-resurrect
После установки tmux-resurrect вы сможете сохранить текущую сессию:
prefix + Ctrl-s # сохранить
prefix + Ctrl-r # восстановитьЭто особенно полезно на серверах, где вы хотите быстро восстановить весь набор окон и панелей после перезагрузки.
Альтернативы и когда tmux не подходит
Альтернативы:
- screen — старый, стабильный мультиплексор; проще, но менее гибок.
- byobu — интерфейс с готовыми конфигурациями поверх tmux/screen.
- GUI-терминалы с вкладками (iTerm2, Terminator) — удобнее локально, но не сохраняют сессии на сервере.
Когда не стоит использовать tmux:
- Если вам нужен только простых локальный терминал с вкладками и вы не удалённый пользователь — GUI-терминал может быть удобнее.
- Если приложение интенсивно использует графику/GUI в терминале (ncurses-специфика), иногда поведение в панелях может отличаться.
Практические подсказки по безопасности и конфиденциальности
- Конфигурационные файлы
~/.tmux.confмогут содержать чувствительные команды. Храните их в приватных репозиториях или локально. - Плагины запускают код при загрузке — устанавливайте только из проверенных источников.
- Если вы используете общие сервера, убедитесь, что права доступа к сокету tmux ограничены (по умолчанию сокеты в /tmp с правами пользователя).
Советы по миграции и совместимости
- tmux-конфиг переносится между машинами, но ожидайте небольших различий: версия tmux, доступность xclip/pbcopy, шрифты и эмуляторы терминала могут влиять.
- Если используете tmux в скриптах, явно указывайте версии или добавляйте проверки
tmux -V.
Совместимость: tmux активно развивается. Новые функции (например, улучшенные опции статуса, форматирование) появляются в новых версиях, поэтому в корпоративной среде фиксируйте минимально поддерживаемую версию.
Чек-листы по ролям
Разработчик:
- Установить tmux и tpm
- Создать именованные сессии для проектов
- Сохранить конфигурацию в dotfiles
- Настроить copy-mode с системным буфером
Системный администратор:
- Убедиться в корректных правах на tmux-сокеты
- Установить tmux-resurrect и tmux-continuum для восстановления
- Обучить команду базовым биндам
Удалённый работник/частый SSH-пользователь:
- Привязать префикс к удобному сочетанию (например, C-a)
- Настроить mouse mode и удобную строку состояния
- Создавать именованные сессии для задач
Мини-методология: как внедрить tmux в команду за 2 недели
- День 1–2: Установка и базовый тренинг (создание/отсоединение/повторное подключение).
- День 3–5: Настройка конфигов и обмен dotfiles в приватном репозитории.
- День 6–9: Введение плагинов (tpm + 2–3 плагина) и разбор практических кейсов.
- День 10–14: Регламент использования, скрипты восстановления и чек-листы для on-call.
Отладка и частые проблемы
Проблема: не работает копирование в системный буфер — проверьте наличие xclip/xsel/pbcopy и правильные бинды в ~/.tmux.conf.
Проблема: странное поведение при смене размера окна — попробуйте обновить версию tmux или отключить плагины по очереди.
Проблема: символы/псевдографика отображаются некорректно — проверьте локаль и настройки терминала (UTF-8) и шрифт.
Шпаргалка (Cheat sheet)
- Запустить новую сессию:
tmux new -s name - Отсоединиться:
prefix + D - Подключиться:
tmux a -t name - Разделить вертикально:
prefix + % - Разделить горизонтально:
prefix + " - Переключиться между панелями:
prefix + стрелка - Создать окно:
prefix + c - Список окон:
prefix + w - Убить окно:
prefix + &
Краткий глоссарий (1 строка на термин)
- Сессия: изолированный набор окон и панелей, работающий в фоне.
- Окно: виртуальный терминал внутри сессии; может содержать несколько панелей.
- Панель: раздел окна (вертикальная/горизонтальная).
- Префикс: клавиша-модификатор, через которую tmux ждёт дальнейших команд.
Когда tmux «проваливается» — примеры и ограничения
- Приложения, требующие аппаратного доступа к терминалу (редкие GUI-инструменты) могут вести себя иначе в tmux.
- Если нужен drag-and-drop, изображения или полноценный GUI — tmux не заменит традиционный графический терминал.
- При очень старых версиях системы могут отсутствовать современные опции конфигурации и плагины.
Краткое резюме
tmux даёт контроль над терминалом: сессии живут независимо от SSH-подключения, панели и окна облегчают параллельную работу, а плагины и конфиг позволяют кастомизировать рабочую среду. Для удалённой работы и on-call-рутин это один из базовых инструментов.
Факто-бокс: ключевые особенности
- Сессии/окна/панели — основные сущности.
- Префикс по умолчанию: Control+B.
- Расширяемость через tpm и множество сообществных плагинов.
- Зависимость от версии tmux и возможностей терминала (UTF-8, буфер обмена).
Дополнительные ресурсы и ссылки: официальная документация tmux (man tmux), репозитории плагинов на GitHub и статьи по настройке ~/.tmux.conf.
Похожие материалы
Троян Herodotus: как он действует и как защититься
Включить новое меню «Пуск» в Windows 11
Панель полей PivotTable в Excel — руководство
Включить новый Пуск в Windows 11 — инструкция
Как убрать дубликаты Диспетчера задач Windows 11