Utilizarea tmux: Un Multiplexor de terminale pentru utilizatorii avansați

În lumea fluxurilor de lucru bazate pe terminale, un instrument iese în evidență ca schimbător de jocuri pentru multitasking, gestionarea sesiunilor și medii persistente de linii de comandă: tmux. Scurt pentru Terminal Multiplexer, tmux vă permite să rulați, să gestionați și să reluați mai multe sesiuni de terminal în interiorul unei singure ferestre de terminal.

Fie că gestionați servere la distanță prin SSH, executați scripturi de lungă durată sau lucrați la mai multe sarcini de dezvoltare, tmux vă oferă superputeri la linia de comandă.

Ce este tmux?

tmux este un multiplexor de terminale open-source care permite:

  • Sesiuni shell multiple într-un singur terminal

  • Sesiuni persistente (chiar și după deconectare)

  • Divizarea panoului și a ferestrei

  • Partajarea sesiunii între utilizatori

  • Comutare ușoară între sarcini fără a părăsi terminalul

Este ca și cum ați avea un manager de ferestre pentru terminal, disponibil oriunde – chiar și prin conexiuni SSH lente.

Instalarea tmux

Pe Debian/Ubuntu:

sudo apt install tmux

Pe CentOS/RHEL:

sudo yum install tmux

Pe macOS:

brew install tmux

Noțiuni introductive cu tmux

Pentru a începe o nouă sesiune tmux:

tmux

Acum vă aflați în interiorul unei noi sesiuni. Dar pentru a o utiliza eficient, va trebui să cunoașteți câteva combinații de taste.

Prefix implicit: Ctrl b

Toate comenzile tmux sunt declanșate cu o tastă prefix, care implicit este:

Ctrl b

Deci Ctrl b, apoi % creează o divizare verticală și așa mai departe.

Comenzi esențiale tmux

ComandăAcțiune
tmuxÎncepeți o nouă sesiune
tmux new -s mysessionPornește o sesiune numită
tmux attach -t mysessionReatașare la o sesiune
tmux lsListează sesiunile
tmux kill-session -t mysessionOprește o sesiune
exitIeși din panoul/fereastra curentă (sau kill prin tmux kill-pane)

Sfaturi și trucuri avansate

1. Sesiuni numite pentru persistență

tmux new -s setup-server("name-your-session")
Ctrl b, apoi “
→ aveți două panouri orizontale: sus și jos

Reatașați oricând:

tmux attach -t setup-server

🧮 2. Economisiți timp cu ajutorul scripturilor de sesiune

Creați .tmux.conf sau scripturi shell pentru a automatiza configurarea:

#!/bin/bash
tmux new-session -d -s dev
tmux send-keys -t dev 'cd ~/project && vim' C-m
tmux split-window -h
tmux send-keys 'htop' C-m
tmux attach -t dev

🧬 3. Partajarea sesiunii cu un alt utilizator

Permiteți sesiuni terminale colaborative (necesită permisiuni partajate):

sudo chmod s /usr/bin/tmux
tmux -S /tmp/shared attach

⚙ 4. Personalizați fișierul .tmux.conf

Exemplu:

# Setați prefixul la Ctrl a (ca ecranul GNU)
unbind C-b
set-option -g prefix C-a
bind-key C-a send-prefix

# Suport pentru mouse
set -g mouse on

# Culori mai bune
set -g default-terminal "screen-256color"

Reîncărcați configurația:

tmux fișier-sursă ~/.tmux.conf

Caz de utilizare: tmux peste SSH

Atunci când gestionați un VPS la distanță prin SSH:

  1. Conectare prin SSH

  2. Începeți o sesiune tmux:

    tmux new -s remote
  3. Rulați actualizări sau procese lungi (de exemplu, apt upgrade)

  4. Deconectați-vă în orice moment – sesiunea persistă

  5. Reconectați-vă mai târziu:

    tmux attach -t remote

💡 Acest lucru este de neprețuit pentru conexiunile nesigure, în special prin legături mobile sau prin satelit.

tmux este unul dintre cele mai puternice instrumente din arsenalul liniei de comandă. Fie că codificați, monitorizați servere sau gestionați mai multe sarcini la distanță, tmux oferă productivitate, persistență și precizie. Odată stăpânit, acesta devine indispensabil – economisind timp, păstrând sesiunile și organizându-vă fluxul de lucru al terminalului ca un profesionist.