Cara Menggunakan GNU Screen di Linux untuk Manajemen Sesi Terminal
Pernah kehilangan progres pekerjaan karena koneksi SSH terputus di tengah proses? GNU Screen adalah terminal multiplexer yang menjaga sesi Anda tetap berjalan meskipun koneksi terputus. Dengan Screen, Anda dapat memulai tugas panjang, memutuskan koneksi, dan melanjutkannya dari perangkat lain tanpa kehilangan data.
Prasyarat Penggunaan GNU Screenโ
- Server Linux dengan akses terminal.
- Paket
screensudah terinstal (umumnya sudah tersedia di sebagian besar distribusi Linux).
Install GNU Screen di Linuxโ
Screen umumnya sudah terinstal. Jika belum, instal dengan perintah berikut:
Ubuntu / Debian:
sudo apt update
sudo apt install screen -y
Rocky Linux / AlmaLinux / CentOS:
sudo dnf install screen -y
Periksa instalasi:
screen --version
Output:
Screen version 4.09.01 (GNU) 30-Aug-24
Versi yang tersedia di repositori OS mungkin lebih lama dari rilis terbaru upstream (GNU Screen 5.0.1), tetapi tetap stabil dan aman untuk penggunaan sehari-hari.
Memulai Sesi Screenโ
Jalankan perintah berikut untuk memulai sesi baru:
screen
Layar akan bersih dan prompt shell baru muncul. Sekarang Anda berada di dalam sesi Screen.
Memberi Nama Sesiโ
Untuk memudahkan identifikasi, beri nama sesi saat memulai:
screen -S nama_sesi
Navigasi dan Perintah Dasar Screenโ
Semua perintah Screen diawali dengan Ctrl+A, kemudian diikuti tombol fungsi.
| Perintah | Fungsi |
|---|---|
Ctrl+A C | Membuat jendela (window) baru |
Ctrl+A " | Menampilkan daftar jendela |
Ctrl+A 0-9 | Berpindah ke jendela nomor tertentu |
Ctrl+A A | Mengganti nama jendela aktif |
Ctrl+A N | Pindah ke jendela berikutnya |
Ctrl+A P | Pindah ke jendela sebelumnya |
Melepaskan dan Menyambung Kembali Sesiโ
Ini adalah fitur utama Screen โ Anda dapat meninggalkan sesi dan kembali lagi nanti.
Melepaskan sesi (detach):
Tekan Ctrl+A D. Screen akan kembali ke shell awal dan menampilkan pesan:
[detached from PID.ttyp3.hostname]
Melihat daftar sesi yang terlepas:
screen -ls
Output:
There is a screen on:
12345.pts-0.server (Detached)
1 Socket in /run/screen/S-user.
Menyambung kembali sesi (reattach):
screen -r
Jika ada beberapa sesi, tentukan PID atau nama sesi:
screen -r 12345
# atau
screen -r nama_sesi
Mengelola Banyak Jendela dalam Satu Sesiโ
Gunakan beberapa jendela dalam satu sesi Screen untuk mengerjakan banyak tugas sekaligus.
- Mulai sesi Screen:
screen -S kerja - Buat jendela baru:
Ctrl+AC - Jalankan perintah di jendela baru (misalnya
tail -f /var/log/syslog) - Kembali ke jendela pertama:
Ctrl+A0 - Buat jendela ketiga:
Ctrl+AC - Lihat daftar jendela:
Ctrl+A"
Mode Scrollbackโ
Untuk melihat output yang sudah terlewati di layar:
- Masuk ke mode scrollback:
Ctrl+A[ - Navigasi dengan tombol panah,
Page Up, atauPage Down - Keluar dari mode scrollback: tekan
Esc
Membagi Layar (Split Window)โ
Screen mendukung pembagian layar secara horizontal dan vertikal.
Split horizontal: Ctrl+A S
Split vertikal: Ctrl+A |
Pindah antar region: Ctrl+A Tab
Tutup region: Ctrl+A X
Kembali ke satu layar: Ctrl+A Q
Mengakhiri Sesi Screenโ
Untuk menutup jendela aktif, ketik:
exit
Atau tekan Ctrl+A K. Ketika semua jendela ditutup, sesi Screen berakhir.
Tips Keamanan Screenโ
- Gunakan
Ctrl+Axuntuk mengunci terminal sementara jika meninggalkan meja. - Jangan biarkan sesi Screen dengan akses root terbuka tanpa pengawasan.
- Di lingkungan multi-user, Screen versi 5.0.1 memperbaiki kerentanan local privilege escalation โ pastikan paket
screendi sistem Anda diperbarui secara berkala.
Verifikasiโ
Untuk memastikan Screen berfungsi dengan baik:
- Mulai sesi:
screen -S uji - Jalankan:
watch uptime - Lepas sesi:
Ctrl+AD - Sambung kembali:
screen -r ujiโ proseswatchmasih berjalan - Tutup sesi:
exit
Proses yang berjalan di dalam Screen tidak terpengaruh oleh putusnya koneksi SSH. Ini sangat berguna untuk tugas migrasi data, kompilasi, atau backup yang membutuhkan waktu lama di Nusa Cloud VPS Anda.
