Sebelum Red Hat Enterprise Linux 8, screen
perintah disertakan. Di versi 8, keputusan dibuat untuk menghentikan screen
dan gunakan tmux
sebagai gantinya. tmux
adalah terminal multiplexer yang berarti Anda dapat menjalankan proses, memutuskan sambungan dari sistem, lalu menyambungkan kembali di lain waktu dan dari komputer lain sehingga Anda dapat terus bekerja dalam proses tersebut. Cara mudah untuk mendemonstrasikan ini adalah dengan SSH ke sistem jarak jauh, mulai tmux
, lalu dari dalamnya, mulai ping
perintah ke sistem jarak jauh, putuskan sambungan dari tmux
, lanjutkan tmux
, dan Anda akan melihat bahwa ping
masih berjalan. Beberapa kasus penggunaan umum untuk ini adalah:
- Jika Anda memiliki proses yang berjalan lama, seperti peningkatan versi aplikasi, dan Anda tidak ingin membiarkan sesi ssh berjalan sepanjang waktu atau Anda khawatir koneksi jaringan Anda akan terputus.
- Sejalan dengan itu, jika Anda menjalankan beberapa sesi, Anda dapat menggunakan label untuk sesi yang berbeda.
- Jika Anda ingin orang lain melihat apa yang Anda lakukan, Anda dapat memulai
tmux
sesi dan kemudian minta SSH orang lain itu ke sistem Anda dan lampirkan ketmux
sesi.
Untuk memulai sesi dasar, jalankan tmux
memerintah. Ini membawa Anda ke tmux
session dan Anda akan dapat menjalankan perintah dan melakukan hal-hal seperti yang biasa Anda lakukan sebagai pengguna Anda. Untuk memutuskan sambungan dari sesi Anda, tetapi tetap membiarkannya berjalan, tekan Ctrl+B lalu D . Untuk melanjutkan sesi, saya dapat menjalankan:
$ tmux ls ### to see if there are any other tmux sessions
$ tmux a ### this will connect to the most recent session that was created.
Jika ada beberapa sesi, maka Anda dapat terhubung dengan nomor sesi:
[root@opendemo ~]# tmux ls
0: 1 windows (created Thu Jan 28 19:58:27 2021) [103x22]
1: 1 windows (created Thu Jan 28 20:00:54 2021) [103x22]
2: 1 windows (created Thu Jan 28 20:01:08 2021) [103x22]
3: 1 windows (created Thu Jan 28 20:01:39 2021) [103x22]
[root@opendemo ~]# tmux a -t 1
[detached]
[root@opendemo ~]#
Contoh bagaimana saya menggunakan ini adalah bahwa perintah terakhir dari skrip awal pribadi saya yang terhubung ke VPN dan melakukan hal-hal lain adalah dengan menjalankan:
# /usr/bin/ssh -t shell-el7.redhat.com tmux attach
Ini menghubungkan saya dengan SSH ke server jarak jauh itu dan kemudian dilampirkan ke tmux
. saya sesi yang saya tahu ada di sana dengan irssi
berlari. Untuk informasi tentang menggunakan irssi
, silakan lihat artikel saya Menggunakan Irssi di dalam sesi tmux Linux.
[ Anda mungkin juga menikmati: Membangun dengan Buildah:Dockerfiles, command line, atau skrip ]
Contoh kasus penggunaan kedua di atas adalah untuk memberi label pada sesi yang berbeda. Sekarang kita telah membahas beberapa dasar penggunaan tmux
, mari kita lihat contoh penggunaan label:
[root@opendemo ~]# tmux new -s "database upgrade"
[detached]
[root@opendemo ~]# tmux new -s "other process"
[detached]
[root@opendemo ~]# tmux ls
database upgrade: 1 windows (created Thu Jan 28 19:50:03 2021) [103x22]
other process: 1 windows (created Thu Jan 28 19:50:23 2021) [103x22]
[root@opendemo ~]# tmux attach -t "database upgrade"
[detached]
[root@opendemo ~]#
Anda mungkin memperhatikan bahwa jika Anda memiliki teks yang bergulir melewati bagian atas layar Anda, Anda tidak bisa begitu saja menekan tombol Page Up kunci untuk melihatnya.
Untuk dapat menggunakan tombol kursor Anda di tmux
agar Anda dapat kembali ke buffer, tekan Ctrl+B lalu [ kunci. Pada titik ini, Anda dapat menggunakan Panah tombol, Page Up , atau Page Down untuk bergerak dalam output di layar.
Jika Anda ingin membagi tmux
sesi menjadi panel yang berbeda, Anda dapat membagi sesi secara vertikal dengan Ctrl+B lalu % . Untuk membagi panel secara horizontal, Anda akan menggunakan Ctrl+B dan kemudian satu tanda kutip ganda “ . Pada tangkapan layar di bawah, pertama-tama saya membagi sesi secara vertikal, lalu saya membagi panel kanan secara horizontal.

Untuk memindahkan kursor dari satu panel ke panel berikutnya, Anda akan menggunakan Ctrl+B lalu Panah yang mana saja kunci untuk bergerak ke arah itu.
Untuk mematikan sesi tanpa melampirkannya, lalu ketik exit
, Anda akan menggunakan kill-session
lalu tentukan sesi yang akan dimatikan:

Ada lebih banyak opsi untuk tmux
, dan mereka tersedia untuk dilihat dengan menggunakan Ctrl+B lalu ? :

[ Pelajari dasar-dasar penggunaan Kubernetes di lembar contekan gratis ini. ]
Bacaan lebih lanjut dapat ditemukan di halaman manual untuk tmux
. Artikel ini telah memberikan pengantar singkat untuk menggunakan tmux
perintah sehingga sesi jarak jauh yang terputus tidak berakhir dengan mematikan proses secara tidak sengaja. Program lain yang mirip dengan tmux
adalah screen
dan Anda dapat membaca tentang screen
dalam artikel ini.