Video failed to load

Tmux: Terminal Multiplexer

1015 words
5 minutes
Tmux: Terminal Multiplexer

About tmux#

tmux adalah akronim dari Terminal Multiplexer, yang sebetulnya sudah sangat self-explanatory. tmux juga merupakan program berbasis CLI (command line interface) yang gratis, open source yang memungkinkan penggunanya untuk membuat, mengatur, dan menjaga sesi terminal dari satu layar terminal saja.1

Cara kerja tmux adalah dengan membuat arsitektur server-client. Artinya, ketika kita menjalankan tmux, tmux akan membuat background process sendiri sebagai server sehingga terminal kita akan terhubung ke tmux sebagai client. Karena server-nya berjalan secara independen, session tmux akan bertahan (akan tetap ada) meskipun kita menutup terminal kita (seperti kitty, alacritty, ghostty, dll) atau kehilangan koneksi SSH. Untuk terhubung kembali ke tmux, kita hanya perlu reconnect dan reattach.

Selain itu, di dalam tmux, ada 3 level hirarki: Session > Window > Pane. Sebuah sesi mengelompokkan satu atau lebih window, dan setiap window menempati seluruh layar terminal dan dapat di-split ke banyak pane. Setiap pane akan menjalankan proses shell-nya masing-masing.

Perhatikan ilustrasi berikut agar lebih mudah memahami ketiga level hirarti tmux tersebut:

tmux 3 level hierarchy. Created with: [excalidraw.com]
tmux 3 level hierarchy. Created with: [excalidraw.com]

Dalam kenyataannya, nanti bentuk tmux adalah seperti ini [click image to enlage]:

Session, Window, and Pane on tmux. Created with: [excalidraw.com]
Session, Window, and Pane on tmux. Created with: [excalidraw.com]

Website dokumentasi resmi tmux: https://tmux.app/

Repository Github resmi tmux:

tmux
/
tmux
Waiting for api.github.com...
00K
0K
0K
Waiting...

Installation#

Berikut adalah cara meng-install tmux di beberapa sistem operasi UNIX/Linux:

DistroCommand
Debian/Ubuntusudo apt install -y tmux
Arch Linuxsudo pacman -Sy tmux
Fedorasudo dnf install tmux
Opensusesudo zypper install tmux
FreeBSDsudo pkg install tmux
NOTE

NixOS:
Masukkan baris berikut di file konfigurasi (/etc/nixos/configuration.nix):

environment.systemPackages = [
pkgs.tmux
];

Atau jika menggunakan nix-shell:

Terminal window
nix-shell -p tmux

Usage#

Berikut adalah cara menggunakan tmux.

INFO

Ctrl+b adalah tombol pemicu utama (prefix) di tmux.

Quickstart#

Starting tmux#

Untuk menjalankan tmux, kita hanya perlu mengetikkan perintah:

Terminal window
tmux

Maka, tmux akan membuat sesi baru dengan default nama sesuai urutan angka. Jika kita pertama kali membuka tmux, maka tmux akan membuat sesi pertama dengan nama 0.

Kita dapat melihat sesi tmux yang aktif (berikut dengan jumlah window-nya) dengan perintah:

Terminal window
tmux ls

tmux new session
tmux new session

Atau jika kita ingin membuka tmux dengan nama sesi yang kita tentukan sendiri:

Terminal window
tmux new -s nama-sesi

tmux new session with custom session name
tmux new session with custom session name

Atau misalnya kita ingin membuat sesi baru tmux, tanpa langsung memasukinya:

Terminal window
tmux new -d # untuk membuat sesi baru dengan nama default (menggunakan angka)
tmux new -s nama-sesi -d # untuk membuat sesi baru dengan nama custom

tmux new detached session
tmux new detached session

Splitting Window#

2 cara men-split window atau membuat panes di tmux: vertikal dan horizontal.

1. Split vertically

Berikut adalah keybinding untuk men-split window tmux secara vertikal.

Terminal window
Ctrl+b %

splitting vertically
splitting vertically

2. Split horizontally

Berikut adalah keybinding untuk men-split window tmux secara horizontal.

Terminal window
Ctrl+b "

splitting horizontally
splitting horizontally

Panes Navigation#

Cara berpindah antar panes:

Terminal window
Ctrl+b # ke pane yang ada di kanan
Ctrl+b # ke pane yang ada di kiri
Ctrl+b # ke pane yang ada di atas
Ctrl+b # ke pane yang ada di bawah

Detaching Session#

Ketika detach (keluar dari tmux), sesi tmux yang kita tinggalkan akan tetap ada.

Terminal window
Ctrl+b d

detaching
detaching

Listing Sessions#

Kita juga bisa melihat daftar tmux session yang aktif dengan perintah berikut:

Terminal window
tmux ls

listing tmux active sessions
listing tmux active sessions

Attaching Session#

Ketika sudah detach, dan kita ingin masuk lagi ke sesi tmux tertentu, gunakan perintah:

Terminal window
tmux attach -t nama-sesi

attach
attach

Renaming Session#

Kita juga bisa mengganti nama sesi tmux yang sudah kita buat sebelumnya:

Terminal window
tmux rename session -t nama-lama nama-baru

renaming session
renaming session

Deleting Session#

Untuk menghapus sesi tertentu:

Terminal window
tmux kill-session -t nama-sesi

deleting session
deleting session

Kill All#

Untuk menghapus semua sesi tmux:

Terminal window
tmux kill-server

kill tmux server / kill all tmux session
kill tmux server / kill all tmux session

Extra#

Berikut adalah penggunaan tmux yang lebih lanjut (advanced).

Creating Window#

Di dalam tmux, kita dapat membuat window baru:

Terminal window
Ctrl+b c

Renaming Window#

Kita juga bisa mengganti nama window di tmux:

Terminal window
Ctrl+b ,

Window Chooser#

Jika kita punya banyak window dan ingin berpindah-pindah window, kita bisa memilihnya dengan perintah:

Terminal window
Ctrl+b w

window chooser
window chooser

Atau langsung dengan nomor identifikasi masing-masing window-nya:

Terminal window
Ctrl+b 0-9

Panes Numbering#

Jika kita punya banyak panes, kita bisa melihat atau mengidentifikasi setiap pane dengan nomornya:

Terminal window
Ctrl+b q

show pane number
show pane number

Panes Resizing#

Kita juga bisa mengatur ukuran setiap pane secara manual:

Terminal window
Ctrl+b # `Ctrl+b` sambil ditahan, untuk memperbesar pane ke kanan
Ctrl+b # `Ctrl+b` sambil ditahan, untuk memperbesar pane ke kiri
Ctrl+b # `Ctrl+b` sambil ditahan, untuk memperbesar pane ke atas
Ctrl+b # `Ctrl+b` sambil ditahan, untuk memperbesar pane ke bawah

Pane Zooming#

Terkadang, jika jumlah pane terlalu banyak, maka ukurannya akan semakin kecil. Kita dapat memperbesar (membuatnya jadi sebesar layar terminal) dengan perintah berikut:

Terminal window
Ctrl+b z

Untuk mengembalikannya ke ukuran semula, kita dapat menggunakan perintah yang sama.

Panes Layouting#

Kita juga bisa mengganti-ganti layout pane:

Terminal window
Ctrl+b [Space]

Copy Mode#

Kita bisa memasuki copy mode di tmux, dan ini adalah mode yang sangat bermanfaat bagi pengguna tmux, karena kita dapat melakukan banyak hal di mode ini, seperti scrolling, copy selection, paste, search, dan lain-lain.

Mengapa hal-hal tersebut (yang terdengar biasa aja) jadi spesial? Karena di tmux, pada dasarnya, kita tidak bisa melakukan semua itu kecuali jika kita masuk ke copy mode.

Untuk masuk ke copy mode:

Terminal window
Ctrl+b [

Sekarang, kita dapat melakukan banyak hal berikut:

1. Navigasi / Scrolling

Kita bisa menggerakkan kursos di mode ini melalui tombol-tombol berikut di keyboard:

Terminal window
h # ke kiri
l # ke kanan
j # ke bawah
k # ke atas

Atau bisa juga dengan tombol arrow di keyboard.

Jika kita ingin scrolling yang lebih cepat:

Terminal window
PgUp # scroll ke atas
PgDown # scroll ke bawah

2. Selecting

Untuk mulai menyeleksi teks:

Terminal window
v

3. Copying

Untuk meng-copy teks yang sudah terseleksi:

Terminal window
[Enter]

4. Pasting

Untuk mem-paste teks yang sudah tercopy:

Terminal window
Ctrl+b ]

5. Searching

Kita juga bisa mencari keyword tertentu yang ada di dalam pane pada mode ini:

Terminal window
/ # search forward
? # search backward
INFO

Untuk keluar dari copy mode, tekan tombol q di keyboard.

Pop-up Window#

Kita juga bisa menampilkan pop-up window di tengah-tengah workflow tmux kita.2
Caranya, kita masuk ke mode perintah terlebih dahulu:

Terminal window
Ctrl+b :

Kemudian masukkan baris berikut:

Terminal window
display-popup

tmux popup window
tmux popup window

Config File#

File konfigurasi tmux biasanya ada di home folder (~/.tmux.conf).
Kita bisa isi dengan berbagai konfigurasi yang kita inginkan. Misalnya, berikut ini adalah isi file konfigurasi tmux saya:

Terminal window
# Mengubah warna latar belakang dan teks status bar
set -g status-bg green # Warna latar belakang status bar (gunakan kode warna atau nama warna)
set -g status-fg black # Warna teks di status bar
set -g status-style "bold"
#set -g status-right "%H:%M" # Hanya menampilkan waktu
set -g status-right "#(whoami)@#H | #(pwd) "
set-option -g pane-active-border-style "fg=blue" # Warna garis pembatas aktif
bind-key T display-popup -E
NOTE

Artikel ini belum membahas tmux secara komprehensif, masih banyak fitur tmux yang tidak di-cover dalam artikel ini. Oleh karena itu, jika kalian tertarik untuk mengetahui tmux lebih dalam, silakan kunjungi dokumentasi official mereka. Semua catatan tentang tmux dapat kalian explorasi lebih lanjut di:

https://tmux.app/doc/

Terima kasih sudah mampir.
Ada kritik dan saran untuk artikel ini atau web ini secara keseluruhan? Tinggalkan komentar di bawah ya!

Footnotes#

  1. https://tmux.app/doc/

  2. https://tmuxai.dev/tmux-popup/

Support & Share

If this article helped you, please share or support!

Sponsor
Tmux: Terminal Multiplexer
https://shangdi.github.io/posts/tech/tmux/
Author
Wildan
Published at
2026-06-21

Comments

Profile Image of the Author
Wildan
Welcome! Wildan-desu.
Announcemenet
Welcome to my blog! Enjoy exploring ~
Categories
Tags
Latest Moments
Site Statistics
Posts
111
Categories
90
Tags
316
Total Words
576,048
Running Days
0 days
Last Activity
0 days ago
Site Info
Build Platform
GitHub Actions
Blog Version
Firefly v6.15.10
License
CC BY-NC-SA 4.0