Δείτε τι πρέπει να κάνετε όταν οι συνδέσεις SSH στο Linux δεν ανταποκρίνονται και τα πλήκτρα δεν λειτουργούν.

Μπορεί να πληκτρολογείτε σε μια απομακρυσμένη περίοδο λειτουργίας SSH και ξαφνικά, δεν συμβαίνει τίποτα. Το σύστημα δεν φαίνεται να ανταποκρίνεται στα πλήκτρα σας. Τι κάνεις?

Δείτε γιατί συμβαίνει αυτό, πώς να τερματίσετε μια συνεδρία SSH που δεν ανταποκρίνεται και γιατί ίσως θέλετε να μεταβείτε στο Mosh.

Τι προκαλεί το πάγωμα των συνεδριών SSH;

Ο κύριος λόγος που παγώνουν οι συνεδρίες SSH είναι η διακοπή της σύνδεσης δικτύου. Τα σήματα Wi-Fi μπορεί να πέφτουν ή μπορείτε να αφήσετε τον υπολογιστή σας να τεθεί σε αδράνεια. Αυτό είναι πιο συνηθισμένο με φορητούς υπολογιστές. Μπορεί να κλείσετε το καπάκι του φορητού υπολογιστή ενώ ξεχνάτε ότι εξακολουθείτε να είστε συνδεδεμένοι μέσω SSH.

Το SSH σχεδιάστηκε αρχικά σε μια εποχή πριν οι άνθρωποι χρησιμοποιούσαν συνήθως φορητούς υπολογιστές. Το SSH λειτουργεί καλύτερα σε ενσύρματα δίκτυα.

1. Τερματισμός με μια ακολουθία διαφυγής

Εάν η συνεδρία SSH παγώσει, δοκιμάστε να χρησιμοποιήσετε μια ακολουθία διαφυγής. Μια ακολουθία διαφυγής σάς επιτρέπει να στέλνετε σήματα στον πελάτη SSH αντί για το απομακρυσμένο μηχάνημα. Οι ακολουθίες διαφυγής προλογίζονται από έναν χαρακτήρα διαφυγής. Από προεπιλογή στον πελάτη OpenSSH, είναι το

instagram viewer
tilde (~) χαρακτήρας.

Για να κλείσετε το πρόγραμμα-πελάτη SSH, μπορείτε να πατήσετε το πλήκτρο tilde και μετά το περίοδος (.) κλειδί.

Μπορείτε επίσης να αλλάξετε τον χαρακτήρα διαφυγής εάν θέλετε. Μπορείτε να καθορίσετε έναν νέο χαρακτήρα διαφυγής με το -μι επιλογή στη γραμμή εντολών. Μπορείτε επίσης να το αλλάξετε μόνιμα ρυθμίζοντας το EscapeChar επιλογή στο δικό σας .ssh/config αρχείο στον αρχικό σας κατάλογο στον τοπικό υπολογιστή.

2. Χρησιμοποιώντας την εντολή kill

Εάν η χρήση μιας ακολουθίας διαφυγής δεν λειτουργεί, μπορείτε να δοκιμάσετε να σκοτώσετε τον πελάτη SSH. Για να βρείτε το αναγνωριστικό διεργασίας (PID) της συνεδρίας σας, διοχετεύστε την εντολή ps μέσω του grep:

ps aux | grep ssh

Το όρισμα "aux" στο ps σημαίνει "καταγράφει κάθε διαδικασία στο σύστημα, ανεξάρτητα από το σε ποιον ανήκει ή αν έχει τερματικό ελέγχου ή όχι."

Εάν έχετε πολλές συνεδρίες, μπορείτε να επιλέξετε την παγωμένη, επειδή η καταχώριση θα εμφανίζει το όνομα χρήστη και τη διεύθυνση στον απομακρυσμένο υπολογιστή στον οποίο είναι συνδεδεμένες οι περίοδοι λειτουργίας SSH. Μόλις βρείτε το PID της συνεδρίας σας, μπορείτε να το τερματίσετε με την εντολή kill:

kill [PID]

Για καλύτερες συνδέσεις SSH, χρησιμοποιήστε το Mosh!

Ένας καλύτερος τρόπος για να αποφύγετε τις ενοχλητικές παγωμένες συνεδρίες SSH είναι να χρησιμοποιήσετε Μος. Εάν η σύνδεση πέσει, το Mosh θα σας επιτρέψει να παραμείνετε συνδεδεμένοι. Θα στείλει τυχόν μηνύματα όταν επανασυνδεθείτε. Λειτουργεί επίσης όταν βάζετε το μηχάνημά σας σε κατάσταση ύπνου.

Μπορείτε επίσης να χρησιμοποιήσετε έναν τερματικό πολυπλέκτη όπως το GNU Screen ή το tmux για να συνεχίσετε τη συνεδρία SSH μετά από οποιεσδήποτε αποσυνδέσεις, αλλά Το Mosh και το tmux είναι ακόμα πιο ισχυρά όταν χρησιμοποιούνται μαζί.

Για να εγκαταστήσετε το Mosh σε Debian και Ubuntu:

sudo apt install mosh

Και στο Arch Linux:

sudo pacman -S mosh

Για την οικογένεια διανομών Red Hat:

sudo dnf install mosh

Τώρα μπορείτε να απαλλαγείτε από τις κολλημένες συνεδρίες SSH

Οι συνεδρίες SSH που δεν ανταποκρίνονται μπορεί να είναι απογοητευτικές, αλλά μπορείτε να τις απαλλαγείτε με μια ακολουθία διαφυγής ή την εντολή kill. Το Mosh είναι μια ακόμη καλύτερη αντικατάσταση που θα διατηρήσει τη σύνδεσή σας ζωντανή μέσω διακοπής σύνδεσης και αδράνειας του συστήματος.