Tmux терминальный оконный менеджер при использовании дает возможность при обрыве связи с сервером по ssh не терять информацию о выполняемых действиях. Работает в любом дистрибутиве Linux. Одна из любимых утилит администраторов Linux.

Введение

Очень быстро при работе с серверами по ssh я стал ощущать два неудобства:

  • Из за обрыва связи я терял информацию о ходе выполняемых действий на сервере,
  • Для выполнения нескольких действий мне приходилось создавать несколько подключений по ssh.

Мои неудобства решаются с помощью терминального оконного менеджера. Работать с ним оказалось удобно и не вызывает сложностей. Присутствуют некоторые нюансы в работе в отличии от работы в простой консолью.

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

Установка Tmux

Пакет присутствует во всех популярных системах и устанавливается с помощью команды:

CentOS 7
yum install tmux

Debian
apt install tmux

Calculate Linux
emerge -av tmux

При настройке под себя необходимо знать какая версия используется для указания правильных параметров в файле настройки.

Вывод информации об установленной версии:

tmux -V
= вывод команды =
tmux 1.8

Более подробно про программу можно почитать на  Wikipedia или на странице разработки.

Работа с Tmux

Вся работа заключается в создании сессий которые живут до перезагрузки системы.

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

Для более детального изучения можно ознакомится с документацией выполнив команду:

man tmux

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

Вывод информации обо всех возможных командах:

tmux list-commands

Рассмотрим основные команды используемые в работе с Tmux при действиях в консоли сервера.

Создание сессии:

= Создание сессии Tmux =
tmux

= Создание сессии с названием  sevo44 =
tmux new -s sevo44

= Информация о работающих сессиях Tmux =
tmux ls
= вывод команды =
0: 1 windows (created Mon Dec 10 10:48:09 2018) [150x33]
sevo44: 1 windows (created Mon Dec 10 10:48:23 2018) [150x33]

= Переименование сессии 0 в sevo44-2 =
tmux rename-session -t 0 sevo44-2

Подключение к сессии:

= Подключение к последней сессии =
tmux a

= Подключение к сессии использую имя или номер =
tmux attach -t sevo44

Удаление сессии:

= Удаление сессии по номеру или имени =
tmux kill-session -t sevo44

= Удаление все сессий =
tmux kill-server

Работа в сессии

При работе в сессии Tmux существует понятие “Префикс” это то что переводит его в командный режим.

По умолчанию префикс “CTRL + b”.

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

Функция Команда
Вывести справку по всем командам ?
Выйти из сесиии d
Закрыть сессию x
Скролинг [ для выхода из режима q

Команды для работы с панелями:

Функция Команда
Разделить текущую панель на две, по вертикали %
Разделить текущую панель на две, по горизонтали
Переход между панелями →←↑↓
Изменить размеры панели Alt + →←↑↓
Закрыть панель x (или набрать exit)

Команды для даботы с закладками (окнами):

Функция Команда
Создание закладки с
Переименование закладки ,
Вывод всех закладок для перехода w
Закладка вперед n
Закладка назад p
Удалить закладку x

Настройка Tmux под себя

Вся настройка сводится к тому что в своей домашней папке необходимо создать файл .tmux.conf в который добавить необходимые настройки.

При настройках надо знать версию и понимать необходимость изменяемых параметров. Множество советов что вы найдете в интернете попросту не будут у вас работать.

Например параметры для смены префикса с “CTRL + b” на “CTRL + а” для версии 1.8 будут выглядеть так:

vim ~/.tmux.conf
= необходимые параметры =
# Смена Contrl+b на +a
set-option -g prefix C-a
unbind-key C-b
bind-key C-a send-prefix

Вывод

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

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Хотите сказать денежное спасибо? Подарите денежку!

Похожие по теме записи

  • http://vk.com/id63130413 Алексей Долотов

    В этом такого нет. Мне не нравится что в mc не работают все привычные сочетания клавиш. С мышкой тоже не все гладго, но думаю что это решу со временем.