Πώς να χειριστείτε το App / OS Freezes στο Linux
Τα λειτουργικά συστήματα που βασίζονται στο Linux θεωρούνται πιο σταθερά από άλλα λειτουργικά συστήματα. Πιστοποιητικό για αυτό είναι το γεγονός ότι το Linux εξουσιώνει πάνω από το 95% των υπερυπολογιστών στον κόσμο. Ωστόσο, η σταθερότητα και η απόδοση δεν σημαίνει ότι τα συστήματα Linux δεν αντιμετωπίζουν παγίδες εφαρμογών ή OS.
Θα μπορούσαν να υπάρχουν πολλοί διαφορετικοί τύποι παγώματος, όπως καταστάσεις όπου μία ή περισσότερες εφαρμογές παγώνουν, το ποντίκι σταματά να ανταποκρίνεται μαζί με εφαρμογές και τέλος, όπου όλα (συμπεριλαμβανομένου του πληκτρολογίου) παγώνουν. Σε αυτό το άρθρο θα συζητήσουμε λεπτομερώς τις διάφορες διαθέσιμες λύσεις για κάθε περίπτωση και με ποια σειρά θα πρέπει να τις εφαρμόσετε.
Σημείωση : Όλες οι λύσεις / τεχνικές που αναφέρονται σε αυτό το άρθρο έχουν δοκιμαστεί σε Ubuntu (έκδοση 16.04). Μπορούν ή δεν μπορούν να εργαστούν σε άλλες διανομές.
Ψύξτε την εφαρμογή
Όταν μια εφαρμογή παγώνει, το πρώτο και πιο προφανές βήμα είναι να κλείσετε την εφαρμογή κάνοντας κλικ στο κουμπί κλεισίματος (κουμπιού κυκλικού σχήματος με το σύμβολο "x" μέσα στο) που βρίσκεται στο επάνω αριστερό μέρος του παραθύρου της εφαρμογής. Συνήθως, σε περίπτωση κατάψυξης, όταν το κάνετε αυτό, εμφανίζεται ένα μικρό παράθυρο που δηλώνει ότι η εφαρμογή δεν αποκρίνεται, δίνοντάς σας τη δυνατότητα είτε να σκοτώσετε τη διαδικασία είτε να περιμένετε να απαντήσει η εφαρμογή.
Μπορείτε να κάνετε κλικ στο κουμπί "Force Quit" για να απαλλαγείτε από την εφαρμογή. Ωστόσο, εάν αυτό δεν λειτουργεί, το επόμενο βήμα θα πρέπει να είναι η εκτέλεση της εντολής xkill
στο τερματικό της γραμμής εντολών. (Μπορείτε επίσης να δημιουργήσετε μια συντόμευση πληκτρολογίου για αυτό.) Μόλις εκτελεστεί η εντολή, ο δείκτης του ποντικιού σας θα μετατραπεί σε X.
Τώρα, σε αυτήν την κατάσταση, κάνοντας ένα αριστερό κλικ του ποντικιού σε οποιοδήποτε παράθυρο της εφαρμογής θα σκοτώσει αυτή την εφαρμογή.
Ενώ το "xkill" είναι μια εξαιρετική λύση για να απαλλαγείτε από τις κατεψυγμένες εφαρμογές, δεν μπορείτε να χρησιμοποιήσετε αυτήν την τεχνική στις διαδικασίες / εφαρμογές που δεν διαθέτουν GUI. Μην ανησυχείτε, καθώς έχουμε ήδη κάποιες γνωστές λύσεις όπως την αποστολή σήματος SIGINT στην εφαρμογή / διαδικασία πατώντας το πλήκτρο "Ctrl + C" ή τη θανάτωση της διαδικασίας χρησιμοποιώντας την εντολή kill
.
Όταν το ποντίκι σταματήσει να λειτουργεί επίσης
Τι συμβαίνει εάν το ποντίκι σας παγώνει επίσης; Σε αυτή την περίπτωση, η πιο κατάλληλη επιλογή είναι να κρατήσετε ένα τερματικό γραμμής εντολών, το οποίο μπορείτε να εκκινήσετε πιέζοντας "Alt + F2", εισάγοντας το gnome-terminal
και πατώντας Enter.
Περιττό να πούμε ότι, από τη στιγμή που βρίσκεστε στη γραμμή εντολών, μπορείτε εύκολα να σκοτώσετε μια διαδικασία / εφαρμογή, ανεξάρτητα από το αν είναι ή όχι GUI.
Εάν για κάποιο λόγο η παραπάνω λύση δεν λειτουργεί, μπορείτε να μεταβείτε σε ένα εικονικό τερματικό πατώντας "Alt + Ctrl + F1". Μόλις εισέλθετε, απλώς πληκτρολογήστε τα στοιχεία σύνδεσης και τώρα έχετε πρόσβαση στην γραμμή εντολών στο σύστημά σας. Όταν τελειώσετε με τη θανάτωση των διαδικασιών που δεν ανταποκρίνονται, μπορείτε να επιστρέψετε στη συνδιάσκεψη GUI (η οποία είναι τεχνικά η κονσόλα όπου εκτελείται ο διακομιστής σας X) πατώντας "Ctrl + Alt + F7". Εναλλακτικά, αν θέλετε, μπορείτε επίσης να κάνετε επανεκκίνηση το GUI από την εικονική κονσόλα, εκτελώντας την ακόλουθη εντολή:
sudo service lightdm επανεκκίνηση
Όταν όλα παγώνουν
Δυστυχώς, υπάρχουν στιγμές που τα πάντα (συμπεριλαμβανομένου του πληκτρολογίου σας) δεν ανταποκρίνονται. Πώς πρέπει να αντιμετωπίσετε αυτό το σενάριο; Το μαγικό κλειδί SysRq έρχεται στη διάθεσή σας εδώ. Σε αντίθεση με ό, τι υποδηλώνει το όνομά του, το μαγικό κλειδί SysRq είναι ένας συνδυασμός πλήκτρων που σας επιτρέπει να μιλάτε απευθείας στον πυρήνα, ανεξάρτητα από την κατάσταση στο οποίο βρίσκεται το σύστημά σας, επιτρέποντάς σας να λύσετε παγίδες / κρέμονται όπου τίποτα δεν φαίνεται να ανταποκρίνεται.
Εδώ είναι οι συνδυασμοί κλειδιά που μιλάμε:
- Alt + SysReq + F : Αυτός ο συνδυασμός πλήκτρων ζητά από τον πυρήνα να σκοτώσει μία διαδικασία (την πιο ακριβή) τη φορά.
- Alt + SysReq + K : Αυτός ο συνδυασμός πλήκτρων ζητά από τον πυρήνα να σκοτώσει όλες τις εφαρμογές / διαδικασίες ταυτόχρονα.
- Alt + SysReq + REISUB : Αυτός ο συνδυασμός πλήκτρων ζητά από τον πυρήνα να πραγματοποιήσει μια καθαρή επανεκκίνηση του συστήματος.
Ακολουθεί ο τρόπος με τον οποίο ο τρίτος συνδυασμός πλήκτρων (στην παραπάνω λίστα) εκτελεί μια καθαρή επανεκκίνηση:
- R : Αλλαγή στη λειτουργία XLATE
- E : Στείλτε το SIGTERM σε όλες τις διαδικασίες εκτός από την init
- I : Στείλτε το SIGKILL σε όλες τις διαδικασίες εκτός από την init
- S : Συγχρονισμός όλων των εγκατεστημένων συστημάτων αρχείων
- U : Επανατοποθετήστε όλα τα συστήματα αρχείων ως μόνο για ανάγνωση
- B : Επανεκκίνηση
ΣΥΜΒΟΥΛΗ : μπορείτε να θυμηθείτε το συνδυασμό REISUB ως την αντίστροφη πλευρά του BUSIER.
Είναι ξεκάθαρο ότι ο συνδυασμός πλήκτρων "Alt + SysReq + REISUB" είναι μια καλύτερη εναλλακτική λύση από την επανεκκίνηση του συστήματος σας.
Σημείωση : Για να λειτουργήσει το κλειδί κλειδιού SysRq, βεβαιωθείτε ότι η παράμετρος "kernel.sysrq" στο αρχείο "/etc/sysctl.d/10-magic-sysrq.conf" έχει οριστεί σε 1.
συμπέρασμα
Υπάρχουν πολλές τεχνικές που μπορείτε να χρησιμοποιήσετε για να ξεφύγετε από καταστάσεις παγώματος εφαρμογών / OS στο Ubuntu. Αξίζει να τονίσουμε εδώ - και είναι σημαντικό για σας να καταλάβετε - ότι αυτές οι τεχνικές είναι εκεί για να σας εξοικονομήσουν από την πραγματοποίηση μιας φυσικής επαναφοράς ή της ενεργοποίησης / απενεργοποίησης, η οποία θα ήταν ιδανικά η τελευταία λύση στις περισσότερες περιπτώσεις.
Image credit: / home