ProCloud Yandex
08.07.2023
читать 7 минут

Терминальные мультиплексоры: Tmux и Dvtm

/upload/iblock/0f8/hdudyb8y6h55r0knd9zbjilaxe7soiff/dvtm_tmux.jpeg

Терминальный мультиплексор – это полезный для администраторов инструмент, который позволяет управлять web-сервером, БД и другими приложениями одновременно. Когда открыто сразу несколько вкладок терминала, то вручную следить за корректностью работы очень сложно. С помощью специального ПО удается решить данную проблему, чтобы одновременно следить за несколькими процессами.

Что такое терминальный мультиплексор и для чего он нужен?

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

К основным преимуществам данного софта можно отнести следующее:

  • стабильность работы;
  • можно подключаться к сессиям из различных мест;
  • создание мультиокна;
  • широкий функционал;
  • простота установки;

Прежде всего нужно разобраться в чем разница между оболочкой, терминалом и консолью.

  1. Оболочка предполагает минимальный функционал и является самым низким уровнем взаимодействия пользователя с устройством. Оболочка предоставляет строку ввода-вывода с приглашением ввести команду.
  2. Терминал – это софт с уже загруженной оболочкой. Работает он на графическом сервере. Говоря простыми словами, терминал является “окном” доступа к оболочке.
  3. Термин консоль применяется для оболочки, которая запущена вне графической среды. 

Некоторые приложения позволяют разделить оболочку или консоль, а другие позволяют разделить терминал. Сегодня наиболее популярными считаются терминальные мультикомплексы tmux и dvtm, поэтому стоит сфокусироваться на них, рассматривая технические возможности.

Tmux

Tmux работает на Linux и MacOS. Его установка происходит с помощью стандартного менеджера пакетов, а запуск при помощи команды

$ tmux

Управление осуществляется с помощью комбинации клавиш Ctrl+B. Для разделения экрана на несколько частей требуется использовать следующие комбинации клавиш:

  • Shift+5 – разделение экрана на две равные части вертикальной чертой;
  • Ctrl+B+” – разделение каждой из вкладок еще на 2 части горизонтальной чертой.

Для разделения экрана также можно использовать соответствующие команды:

$ tmux split-window -v $ tmux split-window -h

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

Важно. Во время восстановления прерванной сессии все сведения и процессы сохраняются.

В manual можно найти все tmux команды и горячие клавиши.

Конфигурационный файл Tmux

Существует 2 категории конфигурационных файлов: пользовательская и глобальная. Необходимые изменения нужно вносить в пользовательский файл .tmux.conf. Данные настройки удобны для комфортной работы в будущем, например, с помощью настройки set -g mouse on можно начать использовать мышь. В этом же файле можно изменить префиксную комбинацию клавиш.

Рекомендации по настройке

Есть некоторые рекомендации по настройке данного ПО, чтобы администратору удобно было работать с ним.

  1. Внизу экрана находится строка состояния. Она часто мешает администраторам. Ее можно отключить при необходимости с помощью команды $ tmux set -g status off
  2. Допускается перемещение строки состояния наверх командой $ tmux set -g status-position top
  3. При необходимости можно изменить цвет этой строки, используя $ tmux set -g status-bg blue

Dvtm

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

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

Предусмотрены следующие режимы создания окон:

  • по вертикали;
  • по горизонтали;
  • режим сетки;
  • полноэкранный режим.

Войти в каждый из этих режимов можно через комбинацию клавиш или с использованием необходимой команды.

Важно. Рекомендуется изучить все комбинации клавиш и команд в manual, чтобы понимать все функциональные возможности этого софта.

В dvtm администратор может увеличить или уменьшить ширину интересующего его окна. Также dvtm поддерживает функцию синхронизации. Если пользователь нажимает на клавишу в одном окне, то она воспроизводится и во всех остальных тоже. Такая функция работает после нажатия комбинации Ctrl+G+A.

Важно. Данная функция актуальна во время использования команд. Таким образом, администратору не нужно выполнять одно и то же действие в каждом окне. Это удобно, когда требуется выполнить настройку удаленных серверов с использованием одинаковой схемы.

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

Во время использования dtach нужно обязательно указывать сокет, с помощью которого происходит подключение к сессии. Доступ к сессии определяется доступом к сокету. Для отключения от dtach требуется нажать Ctrl+\.

Сравнительная таблица команд и клавиатурных комбинаций

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

Управление сессиями

Операция tmux dvtm
Запуск сессии tmux new-session -s {сессия} Данная функция не поддерживается, требуется использовать дополнительно утилиту
Подключение к существующей сессии tmux attach-session -s {сессия} dtach -a /tmp/dvtm-session -r winch
Отключение от сессии Ctrl+B+D Ctrl+\
Просмотр всех активных сессий tmux ls ps aux | grep dtach
Удаление одной/всех сессии tmux kill-session -t {сессия}
tmux kill-server
Не поддерживается

Управление окнами

Переход в последнее активное окно Ctrl+B+L Невозможно
Просмотр списка открытых окон Ctrl+B+W Невозможно
Создание окна Ctrl+B+C Ctrl+G+C
Переход к предыдущему/следующему окну Ctrl+B+P/Ctrl+B+N Ctrl+G+J/Ctrl+G+K

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

Также существуют и другие программы, которые позволяют объединить несколько сессий на одном экране для удобства использования. Во время выбора решения нужно обращать внимание на стабильность работы и функционал.

Новости
13 сентября 202413.09.2024
читать 2 минутычитать 2 мин
Дайджест обновлений продуктов
18 апреля 202418.04.2024
читать 2 минутычитать 2 мин
Дайджест обновлений продуктов Q1
5 апреля 202405.04.2024
читать 1 минутучитать 1 мин
ProCloud CPO Диана Беда в рейтинге ИТ-лидеров от Global CIO
Создать учетную
запись ProCloud
arrow
arrow hover
 
Имя, Фамилия*
Номер телефона
Электронный адрес*
Ваше сообщение*
Файл
Файл
Файл
Файл
Файл
Файл
Файл
Файл
Файл
Файл
Тип формы
ID тикета Zendesk
Продукт
IP
 

Создайте бесплатную учетную запись или напишите нам, чтобы узнать больше.

Нажимая «Отправить заявку» вы даете свое согласие на обработку своих персональных данных