Cara Keluar dari Sesi SSH yang Tidak Responsif di Linux

Cara Keluar dari Sesi SSH yang Tidak Responsif di Linux
Pembaca seperti Anda membantu mendukung MUO. Saat Anda melakukan pembelian menggunakan tautan di situs kami, kami dapat memperoleh komisi afiliasi. Baca selengkapnya.

Anda mungkin mengetik di sesi SSH jarak jauh, dan tiba-tiba, tidak terjadi apa-apa. Sistem sepertinya tidak merespons penekanan tombol Anda. Apa pekerjaanmu?





disk berjalan di 99 windows 10
Video MUO hari ini GULIR UNTUK MELANJUTKAN ISI

Inilah alasannya, cara keluar dari sesi SSH yang tidak responsif, dan mengapa Anda mungkin ingin beralih ke Mosh.





Apa Penyebab Sesi SSH Membeku?

Alasan utama sesi SSH terhenti adalah koneksi jaringan terputus. Sinyal Wi-Fi bisa turun, atau Anda mungkin membiarkan komputer Anda tertidur. Ini paling umum terjadi pada laptop. Anda mungkin menutup penutup laptop sambil lupa bahwa Anda masih login melalui SSH.





SSH awalnya dirancang pada era sebelum orang rutin menggunakan laptop. SSH bekerja lebih baik melalui jaringan kabel.

1. Hentikan Dengan Urutan Escape

  Keluar dari sesi SSH dengan urutan escape

Jika sesi SSH Anda terhenti, coba gunakan urutan escape. Urutan escape memungkinkan Anda mengirim sinyal ke klien SSH, bukan ke mesin jarak jauh. Urutan escape diawali dengan karakter escape. Secara default pada klien OpenSSH, ini adalah gelombang pasang (~) karakter.

Untuk keluar dari klien SSH, Anda dapat menekan tombol tilde lalu periode (.) kunci.

Anda juga dapat mengubah karakter escape jika Anda mau. Anda dapat menentukan karakter escape baru dengan -Dia pilihan di baris perintah. Anda juga dapat mengubahnya secara permanen dengan mengatur EscapeChar pilihan di Anda .ssh/config file di direktori home Anda di mesin lokal.

2. Menggunakan Perintah kill

  Mencari sesi SSH dengan ps dan grep

Jika menggunakan escape sequence tidak berhasil, Anda dapat mencoba mematikan klien SSH. Untuk menemukan ID proses (PID) sesi Anda, kirimkan perintah ps melalui grep:

 ps aux | grep ssh

Argumen 'aux' pada ps berarti 'daftar setiap proses pada sistem, tidak peduli milik siapa atau apakah proses tersebut memiliki terminal pengendali atau tidak.'

Jika Anda memiliki beberapa sesi, Anda dapat memilih sesi yang dibekukan karena daftar tersebut akan menampilkan nama pengguna dan alamat pada mesin jarak jauh tempat sesi SSH login. Setelah Anda menemukan PID sesi Anda, Anda dapat mengakhirinya dengan perintah kill:

 kill [PID]

Untuk Koneksi SSH yang Lebih Baik, Gunakan Mosh!

  Sesi Vim jarak jauh di bawah Mosh dengan jaringan terputus

Cara yang lebih baik untuk menghindari sesi SSH beku yang mengganggu adalah dengan menggunakan Mosh . Jika koneksi terputus, Mosh akan membiarkan Anda tetap terhubung. Ini akan mengirim pesan apa pun saat Anda terhubung kembali. Ini juga berfungsi saat Anda menidurkan mesin.

Anda juga dapat menggunakan terminal multiplexer seperti GNU Screen atau tmux untuk melanjutkan sesi SSH Anda setelah pemutusan sambungan, tetapi Mosh dan tmux bahkan lebih kuat bila digunakan bersama-sama .

Untuk menginstal Mosh di Debian dan Ubuntu:

perbedaan antara simetri berang-berang dan komuter
 sudo apt install mosh

Dan di Arch Linux:

 sudo pacman -S mosh

Di keluarga distro Red Hat:

 sudo dnf install mosh

Sekarang Anda Dapat Menghilangkan Sesi SSH yang Terjebak

Sesi SSH yang tidak responsif dapat membuat frustasi, tetapi Anda dapat menghilangkannya dengan escape sequence atau perintah kill. Mosh adalah pengganti yang lebih baik yang akan menjaga koneksi Anda tetap hidup meskipun koneksi terputus dan sistem tertidur.