Kubutuhan akan banyaknya proses yang bisa berjalan didalam satu shell tidak terlalu penting bagi pengguna linux berbasis konsol, karena pengguna bisa dengan mudah berpindah ke TTY lain(sesi terminal yang bisa diakses melalui perangkat keras) dan menjalankan shell lain, atau menambah instance dari aplikasi terminal grafis yang berbasis Desktop.
Sekarang, coba bayangkan ketika pengguna terhubung melalui perintah ssh ke perangkat lain yang tidak memiliki kemampuan untuk menambah atau berpindah terminal tetapi harus menyelesaikan beberapa tugas dalam satu sesi shell yang terhubung dala sistem jarak jauh tersebut.
pengguna semacam itu mungki perlu menjalankan perintah untuk memantau penggunaan cpu, memantau penggunaan resource, mengedit file konfigurasi dan menjalankan perintah untuk melakukan pembaruan sistem. Jika tanpa program khusus maka pengguna hanya akan bisa menyelesaikan tugasnya satu per satu, atau pun dengan menggunakan metode perintah dengan menempatkan tugas dilatar belakang sistem dengan sedikit kemampuan untuk beralih tugas.
Tapi jangan khawatir karna linux memiliki opsi yang bisa membantu anda untuk bisa memproses beberapa tugas di dalam satu lingkungan shell bash tunggal. Pada tulisan kali ini kita akan lakukan dengan "tmux", tmux memungkinkan pengguna untuk memulai proses dalam sesi yang bisa dilepaskan ketika masih berjalan, kemudian dipasang kembali dan dikelola dengan berbagai metode.
Sebelum kita lakukan lab kita kenali dulu apa itu tmux, perintah tmux kependekan dari terminal multiplexer sesuai dengan namanya tmux memiliki kemampuan yang memungkinkan untuk membuka beberapa terminal dan dibuka dalam layar yang sama. Pada dasarnya perintah tmux sama dengan perintah screen, tetapi bedanya tmux memiliki lapisan aspek yang lebih mudah untuk dilihat. Misalnya, perintah linux menyertakan bilah status di bagian bawah terminal tempat pengguna menjalankan tmux yang memperlihatkan berbagai item informasi.
Untuk memulai lab pada ubuntu 18.04 kita perlu lakukan instalasi dahulu:
pahrial@pahrial:~$ sudo apt-get install tmuxUntuk menjalankan perintah, lakukan ketikan perintah:
Sesi shell akan muncul, dengan bilah akhir berwarna hijau yang berisi informasi:
Sekarang sudah dimungkinkan untuk pengguna memulai tugasnya, untuk contoh gunakan perintah top:
pahrial@pahrial:~$ top
Kemudian untuk melepaskan proses yang sedang berjalan kita lakukan kombinasi Ctrl+B kemudian D, lakukan dengan menekan tombol Ctrl ditambah dengan b kecil secara bersamaan, lepaskan dan tekan d. Itu akan mengembalikan pengguna kesesi shell serta menunjukan pengguna bahwa sudah terlepas dari (sesi 0) dan kembali ke prompt shell.
Untuk melihat proses apa yang sudah dilepas pada tmux session yang ada saat ini, gunaka perintah:
pahrial@pahrial:~$ tmux list-sessionpahrial@pahrial:~$ tmux ls
Untuk membuat tmux dengan sesi yang baru gunakan perintah tmux new-session:
pahrial@pahrial:~$ tmux new-session 'less /etc/passwd'
Seperti sebelumnya untuk melepaskan proses yang sedang berjalan ke sesi shell, tekan Ctrl + b lepaskan, kemudian tekan d. Itu menunjukan bahwa pengguna sudah terlepas dari (sesi 1[opsional]) dan kembali ke prompt shell.
Angka pada session bersifat opsional tergantung proses apa saja yang sudah anda jalankan sebelumnya.
Kemudian untuk mengembalikan proses 0 yang berjalan di sesi tmux, gunakan perintah tmux attach dengan opsi -t diikuti target session.
Dengan perintah seperti diatas akan mengembalikan pengguna kesesi 0 dengan perintah top yang ditampilkan.
Uniknya tmux disini, tmux memungkinkan untuk sesi bisa dilihat dibeberapa jendela dilayar. Untuk mengaktifkan dua sesi tmux secara vertical tekan Ctrl + B lalu tekan %(Shift + 5).
Sesi baru sekarang bisa dilihat disamping sesi pertama (sesi 0) yang menjalankan perintah top, untuk memulai sesi baru cukup ketikan perintah atau proses. Untuk contoh kita ketikan perintah free untuk melihat penggunaan memori.
kemudian untuk mengaktifkan tmux secara horizontal gunakan kombinasi Ctrl + B lepaskan, kemudian tekan "(Shift + ').
Seperti sebelumnya sesi baru bisa dilihat disamping tmux sesi yang telah dibuat sebelumnya. kita akan gunakan perintah pgrep untuk mencari kurang dari perintah yang berjalan pada tmux sesi yang dibuat sebelumnya (sesi 1 [opsional]).
Perintah pgrep akan menghasil output berupa PID dari proses sesi tmux sebelumnya, itu akan sesuai dengan PID yang ditampilkan pada sesi tmux dengan perintah top. Untuk keluar dari sesi ketikan exit kemudian biarkan hanya perintah top yang tersisa dilayar.
Untuk keluar dari perintah top tekan q.
Kemudian untuk keluar dari sesi tmux dan kembali ke propmt shell ketikan exit.
Namun sesi tmux masih ada yang aktif.
Untuk membunuh sesi yang masih aktif, tidak perlu kembali kesana cukup gunakan perintah kill dengan hati-hati agar tidak merusak data. Masukan perintah kill dengan opsi -t diikuti dengan target PID. Target session harus sesuai dengan sesi tmux yang telah dibuat(disini sesi 4).
pahrial@pahrial:~$ tmux kill-session -t 4
Untuk memastika sudah tidak ada lagi sesi tmux yang berjalan kita ketikan perintah tmux ls seperti berikut:
Untuk lebih mengetahui opsi apa yang bisa digunakan dengan tmux bisa anda gunakan perintah man.
Sekian tulisan receh kali ini semoga bisa bermanfaat.
Sumber:
NDG Linux I