Προς μεγάλη απογοήτευση όσων θα ήθελαν να κακολογήσουν το λειτουργικό σύστημα Linux, είναι στην πραγματικότητα αρκετά εύκολο στη χρήση. Χάρη στους σύγχρονους χώρους εργασίας και τις εφαρμογές με γραφικά, ο καθένας μπορεί να πηδήξει στη δράση και να ξέρει τι κάνει.
Αλλά στη σπάνια περίπτωση που προκύπτουν προβλήματα, ίσως χρειαστεί να γνωρίζετε μερικές εντολές για να σας βοηθήσουν. Το πρόβλημα είναι ότι στο Linux υπάρχουν τόσες πολλές εντολές που είναι διαθέσιμες σε εσάς που είναι δύσκολο να γνωρίζετε ποιες εντολές είναι οι καλύτερες επιλογές.
Επίσης: Οι πρώτες 5 εντολές Linux που πρέπει να μάθει κάθε νέος χρήστης
Φυσικά, μπορείτε να δείτε οποιαδήποτε από τις εντολές που εμφανίζουν πληροφορίες συστήματος (όπως top, free, iostat, htop, vmstat ή iftop), αλλά αυτά τα εργαλεία δεν θα σας πάνε πολύ μακριά. Αυτό που έχει μεγαλύτερη αξία είναι να πάτε σε μια ομάδα που μπορεί πραγματικά να σας βοηθήσει αν κάτι πάει στραβά.
Τώρα που τελειώσαμε με την εισαγωγή, ας περάσουμε στις εντολές.
1. dmesg
Όταν άρχισα να χρησιμοποιώ το Linux, dmesg ήταν ο καλύτερός μου φίλος. Στην πραγματικότητα, dmesg χρησιμοποιείται για τον έλεγχο όλων των μηνυμάτων που δημιουργούνται μετά τη φάση φόρτωσης πυρήνα. Με άλλα λόγια, μπορεί να βρείτε μια ένδειξη για κάτι που ίσως μπορέσετε να διορθώσετε εδώ.
Διαφορετικός dmesg Προηγουμένως, έπρεπε να εκτελέσετε την εντολή με δικαιώματα sudo, οπότε:
sudo dmesg
Αυτό θα παράγει αρκετά αποτελέσματα για να μπορείτε να μετακινηθείτε, καθιστώντας λίγο δύσκολο να βρείτε αυτό που ψάχνετε και τα περισσότερα από αυτά που διαβάζετε πιθανότατα θα σας φαίνονται σαν ασυναρτησίες. Τα καλά νέα είναι ότι τα σφάλματα εκτυπώνονται με κόκκινο χρώμα, ώστε να μπορείτε γρήγορα να κάνετε κύλιση για να βρείτε κάτι που μπορεί να είναι λάθος.
Επίσης: 5 καλύτεροι πελάτες ηλεκτρονικού ταχυδρομείου ανοιχτού κώδικα για Linux (και γιατί το Geary είναι το αγαπημένο μου)
Υπάρχει τρόπος να γίνει αυτό ακόμα πιο εύκολο. Ας υποθέσουμε ότι έχετε ένα σφάλμα και θέλετε να ελέγξετε αν έχει καταγραφεί μέσω dmesg Πώς συμβαίνει αυτό. Για να το κάνετε αυτό, εκτελέστε την εντολή:
dmesg -w
Αυτό θα εμφανίσει την έξοδο από dmesg με τον τρόπο που συμβαίνει, οπότε όταν παρουσιαστεί ένα σφάλμα, θα το δείτε να καταγράφεται στο παράθυρο του τερματικού και από εκεί μπορείτε να αντιμετωπίσετε το πρόβλημα.
2. ουρά
Μιλώντας για το επόμενο συμπέρασμα, ουρά Η εντολή σάς επιτρέπει να παρακολουθείτε την έξοδο που είναι γραμμένη σε οποιοδήποτε αρχείο καταγραφής. Ας υποθέσουμε ότι αντιμετωπίζετε πρόβλημα με μια κοινή χρήση Samba και θέλετε να δείτε τι συμβαίνει σε πραγματικό χρόνο. Το πρώτο πράγμα που πρέπει να κάνετε είναι να βρείτε ποιο αρχείο καταγραφής να διαβάσετε. Σε αυτήν την περίπτωση, μπορείτε να εκτελέσετε την εντολή:
ls /var/log/samba
Σε αυτόν τον φάκελο θα βρείτε πολλά αρχεία καταγραφής (για τον διακομιστή Samba και όλα/οποιαδήποτε μηχανήματα που είναι συνδεδεμένα στο κοινόχρηστο στοιχείο). Ας υποθέσουμε ότι θέλω να δω τα περιεχόμενα του αρχείου καταγραφής δαίμονα Samba. Για να το κάνω αυτό θα εκτελούσα την εντολή:
tail -f /var/log/samba/log.smbd
Επίσης: 5 εντολές Linux για να βρείτε γρήγορα τις πληροφορίες συστήματος που χρειάζεστε
Καθώς προκύπτουν σφάλματα, θα εξάγονται στο τερματικό. Όπως μπορείτε να δείτε, έχω μια άγνωστη παράμετρο στο αρχείο smb.conf που ονομάζεται λειτουργίες κοινής χρήσης. Μπορώ να ανοίξω αυτό το αρχείο, να αφαιρέσω τη ρύθμιση, να επανεκκινήσω το Samba και το σφάλμα δεν εμφανίζεται πλέον.
Θυμηθείτε, για να βγείτε από την εντολή tail, πρέπει να χρησιμοποιήσετε τη συντόμευση πληκτρολογίου Ctrl+c.
3. ps
Για μένα, ΥΣΤΕΡΟΓΡΑΦΟ είναι μια πύλη για άλλες εντολές. ΥΣΤΕΡΟΓΡΑΦΟ Η εντολή εμφανίζει ένα στιγμιότυπο οποιασδήποτε τρέχουσας διαδικασίας. μπορείς να χρησιμοποιήσεις ΥΣΤΕΡΟΓΡΑΦΟ για να εμφανίσετε μια λίστα με όλες τις διεργασίες που εκτελούνται ή να τη μεταφέρετε σε grep απαριθμήστε μόνο συγκεκριμένες διαδικασίες.
Αλλά σε τι χρησιμεύει αυτό;
Επίσης: Δύο κόλπα που κάνουν τη χρήση της γραμμής εντολών Linux πολύ πιο εύκολη
Ας υποθέσουμε ότι έχετε μια εφαρμογή που είναι παγωμένη και δεν κλείνει. Κάνετε κλικ σε αυτό το μικρό X στην επάνω δεξιά (ή αριστερή) γωνία του παραθύρου, αλλά απλά δεν φεύγει. Το πρώτο πράγμα που πρέπει να κάνετε είναι να βρείτε το PID αυτής της διαδικασίας για να μπορέσετε να λύσετε το πρόβλημα. Εκεί είναι που ΥΣΤΕΡΟΓΡΑΦΟ θα σου φανεί χρήσιμο. Αλλά ΥΣΤΕΡΟΓΡΑΦΟ από μόνο του δεν είναι πολύ χρήσιμο. Γιατί; Αν απλά τρέχεις ΥΣΤΕΡΟΓΡΑΦΟ θα απαριθμήσει μόνο τις διεργασίες που σχετίζονται με το τερματικό που χρησιμοποιείτε. Αντίθετα, πρέπει να χρησιμοποιήσετε ορισμένες συγκεκριμένες επιλογές, και συγκεκριμένα:
ps aux
- α – όλες οι διαδικασίες
- u – διεργασίες που ανήκουν στον χρήστη που εκτελείται ΥΣΤΕΡΟΓΡΑΦΟ
- x – Εμφανίζει τις εφαρμογές που δεν εκκινήθηκαν από το τερματικό
Αυτή η εντολή εξάγει πολλές πληροφορίες, όλες σε στήλες. Θα δείτε πολλές στήλες, αλλά θα πρέπει να δώσετε προσοχή στο PID και στο COMMAND. Χρησιμοποιώντας τις πληροφορίες σε αυτές τις δύο στήλες, μπορείτε να βρείτε το αναγνωριστικό της διαδικασίας που σας προκαλεί προβλήματα. Μόλις βρείτε αυτή τη διαδικασία, μπορείτε να την ολοκληρώσετε.
Εάν βγείτε ps aux συντριπτικά, μπορείτε να ανακατευθύνετε αυτήν την έξοδο σε grep και απαριθμήστε μόνο ορισμένες διαδικασίες. Ας υποθέσουμε ότι το LibreOffice σας δημιουργεί προβλήματα. Μπορείτε να αναφέρετε μόνο διαδικασίες που σχετίζονται με το LibreOffice, για παράδειγμα:
ps aux | grep LibreOffice
4. σκοτώνω
ο δολοφονία Η ομάδα είναι πολύ δυνατή. Όταν έχετε μια επίμονη εφαρμογή που έχει παγώσει και δεν κλείνει (ή δεν είναι παγωμένη αλλά καταναλώνει πάρα πολλή μνήμη), δολοφονία η εντολή θα αναγκάσει να κλείσει αυτήν την εφαρμογή.
Επίσης: Καλύτεροι φορητοί υπολογιστές Linux του 2024: Εξειδικευμένες δοκιμές και κριτικές
Αλλά για χρήση δολοφονία Για να εκτελέσετε μια εντολή, πρέπει πρώτα να λάβετε το PID της αντίστοιχης εφαρμογής (το οποίο θα βρείτε χρησιμοποιώντας ps aux Ας υποθέσουμε ότι το PID της ελαττωματικής εφαρμογής LibreOffice είναι 604187. Για να τερματίσετε αυτήν τη διαδικασία, η εντολή θα ήταν:
kill 604187
Η εφαρμογή πρέπει να κλείσει και τελειώσατε.
5. systemctl
ο systemctl Η εντολή δεν είναι μόνο καλή για την εκκίνηση και τη διακοπή εφαρμογών, μπορεί επίσης να σας βοηθήσει να αντιμετωπίσετε προβλήματα. Ας πούμε ότι η Samba δεν λειτουργεί όπως αναμενόταν. Εισαγάγετε την εντολή:
systemctl smbd κατάσταση
Η παραπάνω εντολή θα αναφέρει την υπηρεσία που εκτελείται, το PID της, τον αριθμό των συσχετισμένων εργασιών, την ποσότητα της μνήμης και της CPU που χρησιμοποιείται και τις CGroups στις οποίες ανήκει. Ακόμα καλύτερα, εάν υπάρχουν προβλήματα με τη διαδικασία, systemctl θα σας παράσχει τις πληροφορίες που χρειάζεστε για την περαιτέρω αντιμετώπιση του προβλήματος (συνήθως χρησιμοποιώντας logctl).
Επίσης: Γιατί χρησιμοποιώ την εντολή δέντρου Linux καθημερινά και τι μπορεί να κάνει για εσάς
Αυτό είναι όλο. Αυτές οι πέντε εντολές είναι ένα εξαιρετικό μέρος για να ξεκινήσετε την αντιμετώπιση προβλημάτων Linux. Ναι, υπάρχουν μερικά ακόμη εργαλεία, αλλά όσοι ξεκινούν με το Linux ίσως θέλουν να μάθουν πρώτα αυτές τις εντολές.