Гид по технологиям

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

6 min read Терминал Обновлено 01 Nov 2025
tmux: установка, панели, окна и плагины
tmux: установка, панели, окна и плагины

Логотип 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 4

resize-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). Установка и работа:

  1. Клонируйте tpm в ~/.tmux/plugins/tpm.
  2. Добавьте в конфиг:
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'
  1. Внутри 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. День 1–2: Установка и базовый тренинг (создание/отсоединение/повторное подключение).
  2. День 3–5: Настройка конфигов и обмен dotfiles в приватном репозитории.
  3. День 6–9: Введение плагинов (tpm + 2–3 плагина) и разбор практических кейсов.
  4. День 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.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Троян Herodotus: как он действует и как защититься
Кибербезопасность

Троян Herodotus: как он действует и как защититься

Включить новое меню «Пуск» в Windows 11
Windows 11

Включить новое меню «Пуск» в Windows 11

Панель полей PivotTable в Excel — руководство
Excel

Панель полей PivotTable в Excel — руководство

Включить новый Пуск в Windows 11 — инструкция
Windows

Включить новый Пуск в Windows 11 — инструкция

Как убрать дубликаты Диспетчера задач Windows 11
Windows

Как убрать дубликаты Диспетчера задач Windows 11

Как просмотреть историю просмотров Reels в Instagram
Социальные сети

Как просмотреть историю просмотров Reels в Instagram