Поиск по сайту:

Начало работы с Tmux [Руководство для начинающих]


tmux — отличный инструмент повышения производительности для профессиональных пользователей Linux, которым нравится терминал. Хотя это, безусловно, требует обучения.

С помощью tmux вы можете создавать несколько сеансов терминала, которые можно открывать (прикреплять) и закрывать (отсоединять) или отображать одновременно в одном окне.

Изучение того, как использовать терминальный мультиплексор, избавит вас от многих головных болей, если вы проводите много времени в терминале. Это особенно актуально, если ваша работа предполагает доступ к удаленным машинам только через командную строку.

Экран против tmux

Tmux считается следующим шагом вперед по сравнению с мультиплексором GNU Screen.

Если вы привыкли к экранной команде, вам будет легко сразу начать работу. Между этими двумя приложениями есть много общего. Мы получили отличный отклик на нашу статью об экранных командах, и я думаю, что нашим читателям действительно понравится использование некоторых обновленных функций tmux.

Если вы уже знакомы с командой screen, вы можете быстро просмотреть эту статью и найти различия. Для некоторых команд я могу указать на сходства или различия. Помимо этих примечаний, эта статья не предполагает каких-либо предварительных знаний.

Если вы немного растерялись и еще не знаете, о чем эта статья, это совершенно нормально. Мы собираемся пройти через все вместе. Я покажу вам, как установить tmux и выполнить основные операции.

Установить tmux

Tmux — популярное приложение, и оно должно быть доступно в официальном репозитории вашего дистрибутива Linux. Вы можете установить его, используя управление пакетами вашего дистрибутива.

В дистрибутивах на базе Debian и Ubuntu его можно установить с помощью следующей команды:

sudo apt install tmux

Начало работы с tmux

Как мы уже говорили, tmux — отличное приложение, позволяющее повысить вашу продуктивность. Это мощное программное обеспечение, но начать работу с ним может быть немного запутанно.

Я проведу вас через важные функции по одной. Моя цель — облегчить вам задачу и показать основные функции. Существует так много способов настройки tmux, что мы не сможем охватить все в этой статье. Если вам интересна статья о расширенных функциях и функциях, сообщите нам об этом в разделе комментариев!

Создать сеанс в tmux

Откройте терминал и используйте следующую команду:

christopher@linux-console:~$ tmux

Это должно привести вас в tmux. Вы увидите командную строку, как обычно, но теперь вы увидите меню в стиле панели задач в нижней части терминала, в котором будет написано что-то вроде bash 0 *. Звездочка указывает, что это ваше активное окно.

Давайте создадим пару окон, между которыми вы сможете переключаться. Это можно сделать, используя префикс [ctrl+b] + c.

На панели задач вы должны увидеть, что было добавлено что-то с именем 1:bash. Давайте добавим еще два, прежде чем продолжить.

Теперь это должно выглядеть так, как показано на скриншоте ниже. Всего у вас должно появиться четыре новых окна терминала (вы будете видеть только одно окно одновременно).

Автоматическое имя окна

Tmux действительно может идентифицировать определенные программы и автоматически переименовывать ваши окна (если вы не указали свое имя явно). Например, если вы запустите команду top в окне, вы заметите, что имя окна изменилось с bash на top.

Сеанс, окно и панель (разделение) в tmux

Прежде чем идти дальше, вы должны знать разницу между сеансом, окном и панелью в tmux.

Рассматривайте сеансы как блокноты, окна как главы, а оконные панели как страницы.

Сеанс может иметь несколько окон. Окно — это, по сути, терминал. Вы можете разделить окно на несколько вертикальных и горизонтальных панелей. Это означает, что в окне терминала может быть несколько терминалов.

Вы можете создать сеанс tmux для конкретной темы/проекта. Например, если вы управляете тремя серверами, возможно, вы сможете создать по одному сеансу для каждого сервера для выполнения задач. Используйте одно окно для мониторинга системных ресурсов, а другое — для выполнения некоторых задач обслуживания. Окно мониторинга системы может иметь несколько панелей для мониторинга использования памяти, процессора и диска.

Переключение между окнами в сеансе tmux

Помните, что сочетание клавиш Ctrl+B (одновременно) похоже на клавишу «tmux». Он сообщает программе, что вы хотите ввести команду. Посмотрите таблицу ниже, чтобы начать работу с интерфейсом tmux.

PreviousNextn (0, 1, 2, 3 etc.)
[ctrl + b] + p[ctrl + b] + nSwitch to n Window: [ctrl + b] + 0

Теперь вы можете перемещаться «туда-сюда» или выбирать конкретный экземпляр по его идентификационному номеру. Пробуйте эти вещи, пока не почувствуете себя комфортно.

Готовый? Потрясающий. Давайте проверим некоторые другие функции.

ПРИМЕЧАНИЕ. Если вы опытный пользователь Screen, возможно, вы привыкли использовать префикс [ctrl+a]. Редактирование файла конфигурации позволит вам изменить префикс, если захотите. Я действительно обнаружил, что альтернативная комбинация клавиш повысила мою эффективность, но я также понимаю, что от старых привычек трудно избавиться.

Переключение с помощью списка окон

Другой вариант использует [ctrl+b] + w. Это дает вам визуальный обзор сеансов. Вы можете использовать клавиши со стрелками для выбора нужных окон/панелей.

Назовите или переименуйте окна в tmux

Вы можете назвать текущее окно с помощью следующей комбинации клавиш:

[ctrl+b] + ,

Назовите свой сеанс tmux

Возможно, вам будет полезно давать своим занятиям осмысленные названия, чтобы все было организовано. Давайте попробуем назвать ваш первый сеанс с помощью tmux.

Вы можете назвать его как угодно, но в данном случае я назову его свободным. Введите следующую команду:

tmux new -s free

Теперь у вас должен запуститься новый сеанс tmux. Если вы посмотрите в нижнюю левую часть окна, вы увидите имя вашего сеанса, а не общее «bash».

Если вы уже создали сеанс, вы можете назвать его или переименовать, используя следующую комбинацию клавиш:

[ctrl+b] + $

Отключить сеанс (выйти из сеанса tmux, но оставить его работать в фоновом режиме)

Прежде чем продолжить, давайте начнем работать с командой watch, которая будет обновлять результаты каждые 2 секунды.

watch free

Если вы не знакомы с командами free или watch, я рекомендую вам ознакомиться с командами watch и free. Однако знание их функциональности не является обязательным для использования их с tmux.

Хорошо, как только программа запустится, отключите сеанс. Используйте эту комбинацию клавиш:

[ctrl + b] + d

Это должно вернуть вас в стандартную командную строку. Имейте в виду, что сеанс tmux все еще работает в фоновом режиме, и вы можете войти в него снова, когда захотите.

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

Что случилось с вашей сессией? Он все еще работает в фоновом режиме. Вы можете повторно открыть сеанс по имени или по идентификационному номеру, но что, если вы забудете имя сеанса?

В tmux есть встроенная функция списка:

tmux ls

Здесь будут перечислены все ваши текущие сеансы tmux. Запустив его, вы получите такой результат:

christopher@linux-console:~$ tmux ls
free: 1 windows (created Sat Feb 29 03:16:31 2020) [80x23]

Как видите, здесь также указано, сколько окон имеет сеанс.

Повторно войдите в сеанс в Tmux (также известный как присоединение)

Чтобы повторно открыть сеанс tmux, вы можете использовать команду tmux с опцией Attach или Attach-session, например:

tmux attach -t session_name_or_number

Вот анимация, которая показывает все эти шаги до этого момента демонстрации.

Создание нескольких панелей в tmux

Теперь, когда у вас есть понимание основ, вы можете пойти дальше и создать несколько панелей.

[ctrl + b] + %

[ctrl+b] + «

Давайте попрактикуемся с этими командами, создав вертикальное разделение, за которым следует горизонтальное разделение.

[ctrl + b] + " 
[ctrl + b] +  %

Если вы ввели команды в таком порядке, у вас должны появиться три панели следующего вида:

Вы можете использовать клавишу [ctrl+b] + пробел, чтобы переключить макет панели, находящейся в фокусе.

Переключение между панелями

Для переключения между разделениями вы можете использовать префикс tmux [ctrl+b] + клавиши со стрелками.

[ctrl+b] + arrow keys

Это циклически перемещает панели в выбранном вами направлении. Выбранная панель будет выделена зеленым цветом.

Увеличение панели

Вы также можете «увеличить» выбранную панель с помощью [ctrl+b] + z. Это вернет выбранный экран в полный размер. Чтобы выйти из режима масштабирования, снова нажмите [ctrl+b] + z.

Уничтожение или закрытие панелей

Это важный момент. Вы можете закрыть панель (разделить), используя префикс [ctrl+b] + x.

Он попросит вас подтвердить:

kill-pane 0? (y/n)

Убийство или закрытие окон в tmux

Чтобы закрыть текущее окно (вкладки), используйте:

[ctrl + b] + &

Он запросит ваше подтверждение:

kill-window window_name? (y/n)

Убийство сессий в tmux

Чтобы завершить текущий сеанс tmux, который вы используете, вам придется сначала закрыть все окна. Это не очень удобно, не так ли?

Вы можете выборочно завершить сеанс tmux, используя его имя или номер, например:

tmux kill-session -t session_name_or_number

Это завершит сеанс, даже если вы находитесь внутри сеанса.

Если вы хотите завершить весь сеанс, кроме того, который вы используете в данный момент (или последнего, который вы использовали), используйте эту команду:

tmux kill-session -a

Чтобы завершить все сеансы tmux за один раз, вы можете использовать эту волшебную команду:

tmux kill-server

Скачать шпаргалку по tmux

Вы изучили основы tmux, но запомнить все команды непросто, особенно вначале. Вот почему я суммирую все команды в таблице ниже. Вы также можете скачать его в формате PDF.

tmux

Начать новый сеанс

tmux new -s name

Начать новый сеанс с именем

tmux ls

Список всех сессий

tmux kill-session -t name

Убить указанный сеанс

tmux kill-session -a

Уничтожить все сеансы, кроме последнего использованного сеанса

tmux kill-server

Убить все сеансы tmux

tmux attach -t name

Прикрепить/войти в указанную сессию

[Ctrl +b] + d

Отключить/выйти из текущего сеанса

[Ctrl +b] + $

Назовите или переименуйте текущий сеанс

[Ctrl +b] + c

Создать новое окно

[Ctrl +b] + ,

Назовите или переименуйте текущее окно

[Ctrl +b] + w

Список всех окон

[Ctrl +b] + &

Убить текущее окно

[Ctrl +b] + n/p/N

Перейти к следующему/предыдущему/N-му окну

[Ctrl +b] + %

Создать горизонтальную панель

[Ctrl +b] + “

Создать вертикальную панель

[Ctrl +b] + space key

Переключить макет текущей панели

[Ctrl +b] + z

Увеличить масштаб текущей панели

[Ctrl +b] + x

Убить текущую панель

Заключение

Благодарим вас за то, что вы следили за нашим введением в tmux. Как видите, вариантов применения очень много. Я надеюсь, что этот базовый обзор дал вам некоторые идеи о том, как можно использовать tmux для улучшения рабочего процесса.

Как всегда, если у вас есть какие-либо вопросы, пожалуйста, оставьте их ниже в разделе комментариев.

Статьи по данной тематике: