Как я поменял screen на tmux…

…без капли сожаления.

Всем привет! Много лет использовал screen (оконный менеджер терминала) во FreeBSD для работы в консоли. Удобно, знаете ли, зайти на сервер, вызывать screen -R, запустить обновление приложений, нажать Ctrl-A D и выйти из терминала. Исходя из моих потребностей, всё, что нужно от оконного терминала — это висеть где-то в фоне и восстанавливать окна при обрыве связи.

И с этим у screen проблемы — иногда screen -R не срабатывает и приходится вызывать screen -ls для просмотра всех сессий. Потом нужно подключиться к правильной сессии по числовому идентификатору. Это даже звучит как долгий и неудобный процесс.

Однажды мне окончательно это надоело, и я решил перейти на tmux (привет, Илья!).

На FreeBSD ставится элементарно:

[root@server]$ pkg install tmux
Updating FreeBSD-ports repository catalogue...
FreeBSD-ports repository is up to date.
Updating FreeBSD-ports-kmods repository catalogue...
FreeBSD-ports-kmods repository is up to date.
All repositories are up to date.
Checking integrity... done (0 conflicting)
The following 1 package(s) will be affected (of 0 checked):

New packages to be INSTALLED:
        tmux: 3.7b [FreeBSD-ports]

Number of packages to be installed: 1

The process will require 1 MiB more space.

Proceed with this action? [y/N]: y
[1/1] Installing tmux-3.7b...
[1/1] Extracting tmux-3.7b: 100%

По умолчанию перед каждой командой надо нажимать Ctrl-B, но я уже привык к другому, поэтому пишем небольшой конфиг (~/.tmux.conf):

# Префикс теперь Ctrl-A
set -g prefix C-a
# История в 2500 строк
set-option -g history-limit 2500
# Выключаем старый префикс
unbind C-b
# Включаем новый
bind C-a send-prefix
# "C-A |" вертикальное разделение окон
bind | split-window -h -c "#{pane_current_path}"
# "C-A -" горизонтальное разделение
bind - split-window -v -c "#{pane_current_path}"
# Выключаем старые комбинации
unbind '"'
unbind '%'

Затем добавляем alias с названием tmux-restore в ваш ~/.bash_profile:

alias tmux-restore='tmux attach || tmux new'

На этом настройка завершена, с чем я вас и поздравляю.

На работе (а я нашёл работу!) я использую только tmux-restore и разделение окна по горизонтали. Такие дела.

Комментариев нет. Будьте первым!
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Блог Евгения Жирнова