(SSH) Apakah berbahaya untuk menutup terminal tanpa "keluar"?

24

Ini terjadi berulang kali.

Sementara SSH aktif, saya sangat lelah dan hanya menutup terminal tanpa exit

Apakah berbahaya melakukan hal seperti itu?

apasajja
sumber
Cukup tekan Ctrl+Ddua kali alih-alih Alt-F4atau Ctrl-Q, ini mengirimkan sinyal keluar ke ssh Anda saat ini, lalu ke shell Anda, dan terminal emulator akan menutup secara otomatis tanpa shell. Masalah terpecahkan.
Profpatsch
@Profpatsch: kecuali, tentu saja, Anda menggunakan IGNOREEOF(di bash) karena Anda juga menggunakan multiplexer terminal dan mendapat lelah dari kadang-kadang salah ketik ^a dsebagai ^d, sehingga berhenti tidak sengaja.
0xC0000022L

Jawaban:

28

Tidak semuanya. Ketika proses terminal keluar, proses klien di dalam juga akan mati, dan ketika ini terjadi, koneksi ke server jauh akan ditutup oleh sistem operasi. Server akan melihat koneksi ditutup, dan menghentikan proses di server.

Namun, ada kemungkinan bahwa Anda mungkin berakhir dengan proses berlama-lama di server jika mereka dilatar belakangi dan mengabaikan sinyal tertentu.

Flup
sumber
10

Ketika kami menutup terminal secara langsung, Ini menghasilkan sinyal SIGHUP. Sinyal ini membunuh semua tugas / proses di bawah terminal secara otomatis / instan. Jadi tidak ada masalah yang terjadi.

Amit Sachdeva
sumber
-1

Ini mungkin tidak benar. Jika bash menjalankan loop, ia dapat mengabaikan SIGHUP dan melanjutkan sesi. Saat ini saya mencoba mencari tahu mengapa ini terjadi.

Juga, proses penutupan sangat baik di sini tetapi ternyata Systemd telah mengubah beberapa perilaku.

/server/463366/does-getting-disconnected-from-an-ssh-session-kill-your-programs

NeuralSandwich
sumber
Akan lebih baik jika Anda memvalidasi klaim Anda terlebih dahulu sebelum menjawab, daripada menjawab dengan "ini mungkin tidak benar".
Kusalananda
Yah itu semua tergantung. Tampaknya berbeda antara: * Pengaturan sistem init * Pengaturan shell * Proses sedang berjalan di terminal dan penanganan sinyalnya
NeuralSandwich