Menjalankan Banyak Sesi Terminal dengan Tmux
Sebagai seorang Linux sysadmin, kita sering berhadapan dengan banyak terminal dan tugas yang perlu dikelola secara bersamaan. Di sinilah tmux datang sebagai penyelamat. tmux (Terminal Multiplexer) adalah tool yang memungkinkan kita untuk membuka beberapa sesi terminal dalam satu jendela terminal. Ini berarti kita dapat menjalankan berbagai proses di berbagai sesi tanpa harus membuka banyak jendela terminal. tmux sangat berguna karena memiliki kemampuan untuk mempertahankan sesi meskipun koneksi terputus, sehingga kita tidak akan kehilangan proses yang sedang berjalan.
Kelebihan tmux:
- Multiplexing: dapat membuat banyak sesi dalam satu jendela, dan dalam setiap sesi, bisa memiliki banyak jendela dan pane. Ini sangat membantu untuk mengelola berbagai tugas atau server secara bersamaan.
- Persistence: dapat menjaga sesi tetap hidup meskipun telah logout. Ini sangat berguna untuk menjalankan proses jangka panjang tanpa harus khawatir kehilangan sesi.
- Flexibilitas: dapat dengan mudah berpindah antara jendela dan pane, membuat pengelolaan tugas menjadi lebih efisien.
Install tmux
Untuk menginstal tmux, kita bisa menggunakan package manager sesuai dengan distribusi Linux yang digunakan:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | # Debian based sudo apt install tmux # RHEL based sudo dnf install tmux # Arch Linux sudo pacman -S tmux # openSUSE sudo zypper install tmux # Alpine Linux sudo apk add tmux |
Cara Pakai tmux
Memulai Sesi
Memulai sesi baru dengan mengetik command:
1 | tmux |
Perintah di atas akan membuat sesi baru dengan ID berupa angka.
Jika ingin memberikan ID berupa nama pada sesi agar lebih mudah dikenali, gunakan opsi -s
:
1 | tmux new -s nama-sesi |
Misalnya:
1 | tmux new -s install-aapanel |
Jika nama sesi terlalu panjang, akan terpotong. Atur lebar karakter nama sesi yang ditampilkan dengan membuat file konfigurasi tmux:
1 | nano ~/.tmux.conf |
Lalu masukkan konfigurasinya, misal lebarnya 20 karakter:
1 | set -g status-left-length 20 |
Navigasi
Membuat window baru pada sesi:
1 | ctrl + b, lalu c |
Berpindah antar window pada sesi:
1 | ctrl + b, lalu ID window (misal 0, 1, 2, dst) |
Karakter *
sebagai tanda bahwa berada di window itu.
Membagi layar menjadi pane secara horizontal:
1 | ctrl + b, lalu % |
Membagi layar menjadi pane secara vertikal:
1 | ctrl + b, lalu " |
Berpindah antar pane:
1 | ctrl + b, lalu gunakan tombol panah |
Detach dan Attach
Keluar dari sesi tanpa harus menghentikannya (detach):
1 | ctrl + b, lalu d |
Kembali ke sesi (attach):
1 | tmux attach -t nama-sesi |
Menghentikan Sesi
Menampilkan daftar sesi yang sedang berjalan:
1 | tmux ls |
Menghentikan sesi, bisa berdasarkan ID atau nama:
1 2 | tmux kill-session -t id_sesi tmux kill-session -t nama-sesi |
Autorun Tmux
Jika ingin menjalankan tmux secara otomatis ketika mengakses shell, kita harus script pada masing-masing shell yang digunakan untuk menjalankan tmux.
bash shell
Buka file .bashrc
:
1 | nano ~/.bashrc |
Tambahkan script berikut:
1 2 3 | if command -v tmux >/dev/null 2>&1; then [ -z "$TMUX" ] && exec tmux fi |
zsh shell
Buka file .zshrc
:
1 | nano ~/.zshrc |
Tambahkan script berikut:
1 2 3 | if [[ -z "$TMUX" ]]; then tmux attach-session -t default || tmux new-session -s default fi |
fish shell
Buka file konfigurasi fish shell config.fish
:
1 | nano ~/.config/fish/config.fish |
Tambahkan script berikut:
1 2 3 4 5 | if status is-interactive if not set -q TMUX tmux end end |
tmux adalah tool yang sangat berguna bagi setiap sysadmin Linux yang perlu mengelola banyak tugas dan terminal secara efisien. Dengan fitur seperti multiplexing, persistence, dan fleksibilitas tinggi, tmux menjadi pilihan utama untuk manajemen terminal.
selamat mencoba 🙂