Η συνεργασία με μια διαδικασία Linux συχνά σημαίνει να γνωρίζετε το αναγνωριστικό της διαδικασίας ή το PID. Είναι ένας μοναδικός αριθμός που δίνεται σε κάθε κομμάτι λογισμικού που τρέχει. Εδώ είναι δύο τρόποι για να μάθετε τι είναι.
Τι είναι το αναγνωριστικό διαδικασίας Linux;
Πώς να αποκτήσετε ένα Linux PID με την εντολή PIDOF
Πώς να βρείτε PID με την εντολή pgrep στο Linux
Τι είναι το αναγνωριστικό διαδικασίας Linux;
Εσωτερικά, το Linux παρακολουθεί τη διαδικασία λειτουργίας του, διαθέτοντάς τους έναν μοναδικό αριθμό αναγνώρισης, που ονομάζεται ID της διαδικασίας ή PID. Κάθε τρέχουσα εφαρμογή, χρησιμότητα και δαίμονα έχει ένα PID.
Τα PIDs είναι απλές ακέραιες τιμές. Μια νεοσυσταθείσα διαδικασία θα λάβει ένα PID ένα υψηλότερο από το τελευταίο PID που εκδόθηκε. Έτσι, η διαδικασία με το υψηλότερο PID είναι το νεότερο - δηλαδή, πιο πρόσφατα -ξεκίνησε η διαδικασία. Αυτό συνεχίζει μέχρι το σύστημα να χτυπήσει τη μέγιστη τιμή για ένα PID.
Το ανώτατο όριο για ένα PID είναι 32768. Μόλις επιτευχθεί αυτός ο αριθμός, ο Linux επιστρέφει στην αρχή και ψάχνει για ένα PID που έχει γίνει ελεύθερη επειδή η διαδικασία που είχε προηγουμένως έχει τερματίσει.
Η διαδικασία με PID του 1 είναι η πρώτη διαδικασία που ξεκινά όταν το Linux ξεκινά από τις διαδικασίες εκκίνησης. Σε συστήματα που βασίζονται στο σύστημα που θα είναι
σύστημα
. Σε άλλα συστήματα είναι πιθανό να είναι
μέσα σε αυτό
, αν και ορισμένες κατανομές Linux χρησιμοποιούν εναλλακτικές λύσεις όπως
OpenRC
ή
S6
.
Μερικές φορές είναι χρήσιμο να ανακαλύψετε το PID μιας διαδικασίας, συνήθως επειδή θέλετε να εκτελέσετε κάποια δράση σε αυτή τη διαδικασία. Εδώ είναι δύο διαφορετικές μέθοδοι για την εύρεση του PID μιας διαδικασίας όταν γνωρίζετε το όνομα της διαδικασίας.
ΣΧΕΤΙΖΕΤΑΙ ΜΕ: Τι είναι τα UNIX PID και πώς λειτουργούν;
Πώς να αποκτήσετε ένα Linux PID με την εντολή PIDOF
ο
πύργος
Η εντολή μπορεί να θεωρηθεί ως ο συνδυασμός των "PID" και "του". Είναι σαν να ρωτάς ποιο είναι το PID αυτής της διαδικασίας; Εάν χρησιμοποιούμε την εντολή χωρίς παραμέτρους, δεν κάνει τίποτα. Σας επιστρέφει σιωπηλά στη γραμμή εντολών. Πρέπει να καθορίσουμε ένα όνομα διαδικασίας.
πύργος
μας λέει ότι το PID του κελύφους είναι 8304. Μπορούμε να το επιβεβαιώσουμε με το
ΥΣΤΕΡΟΓΡΑΦΟ
εντολή. Το μόνο που πρέπει να κάνουμε είναι να καλέσουμε
ΥΣΤΕΡΟΓΡΑΦΟ
χωρίς παραμέτρους. Θα αναφέρει τις διαδικασίες που εκτελούνται στην τρέχουσα συνεδρία.
Επειδή
ΥΣΤΕΡΟΓΡΑΦΟ
Αναφορές για όλες τις διαδικασίες που μπορεί να βρει, οι οποίες θα συμπεριληφθούν, μας λέει ότι υπάρχει
βίαιο χτύπημα
διαδικασία και α
ΥΣΤΕΡΟΓΡΑΦΟ
Διαδικασία λειτουργίας. Όπως θα περίμενε κανείς, το
βίαιο χτύπημα
η διαδικασία έχει το ίδιο PID
πύργος
αναφέρεται στο.
Εάν έχετε ανοίξει πάνω από ένα παράθυρο τερματικού,
πύργος
θα αναφέρει όλα αυτά.
Σημειώστε ότι τα PID είναι εισηγμένα από το υψηλότερο έως το χαμηλότερο ή, με άλλα λόγια, από το πιο πρόσφατο έως το παλαιότερο.
Αυτό που δεν δείχνει είναι ότι ίσως να μην είστε ο ιδιοκτήτης όλων αυτών των διαδικασιών.
πύργος
Βρίσκει όλες τις διαδικασίες με τα αντίστοιχα ονόματα, ανεξάρτητα από το ποιος τους κατέχει. Ας δούμε βαθύτερα με τη σωτηρία της εξόδου
γροθιά
. Χρησιμοποιούμε το
-μι
(επιλέξτε όλες τις διαδικασίες) και το
-φά
(πλήρης καταχώριση) Επιλογές με
ΥΣΤΕΡΟΓΡΑΦΟ
.
Δύο από τις διαδικασίες bash ανήκουν στον χρήστη Dave, ο τρίτος ανήκει στον χρήστη Mary.
Μερικές φορές μια εφαρμογή θα δημιουργήσει πολλές διαδικασίες, καθεμία από τις οποίες λαμβάνει το δικό της PID. Αυτό παίρνουμε με το Google Chrome.
Από προεπιλογή,
πύργος
Αναφορές για όλες τις διαδικασίες. Αν θέλουμε, μπορούμε να ζητήσουμε μόνο τις πιο πρόσφατες από αυτές τις διαδικασίες. ο
-μικρό
(Single Shot) Η επιλογή κάνει ακριβώς αυτό.
Για να χρησιμοποιήσετε το
σκοτώνω
εντολή σε
Χειροκίνητα σκοτώνει
όλα τα
χρώμιο
Οι διαδικασίες θα ήταν κουραστικές. Εάν καταγράψουμε τη λίστα των διαδικασιών σε μια μεταβλητή, μπορούμε να περάσουμε αυτή τη μεταβλητή στο
σκοτώνω
εντολή. ο
σκοτώνω
Η εντολή μπορεί να δεχτεί πολλαπλά PID στην εντολή της, οπότε αποδέχεται ευτυχώς την εισροή μας και σκοτώνει όλες τις διαδικασίες για εμάς.
Η πρώτη εντολή συλλέγει την έξοδο από
πύργος
και το αποδίδει στη μεταβλητή μας, την οποία ονομάζουμε
γαρνιτούρας
. Δεν χρειάζεται
ηχώ
Στην οθόνη, το κάνουμε αυτό για να δείξουμε τι κρατάει η μεταβλητή μας.
Περνάμε τη μεταβλητή στο
σκοτώνω
εντολή, στη συνέχεια χρησιμοποιήστε
πύργος
Για άλλη μια φορά για να ελέγξετε εάν παραμένουν οι διαδικασίες Chrome. Όλοι έχουν σκοτωθεί.
Μια ιδιοσυγκρασία του
πύργος
είναι ότι δεν θα επιστρέψει το PID ενός σεναρίου κελύφους. Επιστρέφει το PID του
βίαιο χτύπημα
κέλυφος που τρέχει το σενάριο. Για να δούμε το κέλυφος που τρέχει ένα σενάριο, πρέπει να χρησιμοποιήσουμε το
-Χ
(Scripts) Επιλογή.
πύργος
επιστρέφει το PID ενός κελύφους, και
ΥΣΤΕΡΟΓΡΑΦΟ
μας δείχνει ότι υπάρχουν δύο κελύφη που τρέχουν. Το ένα είναι το κέλυφος που τρέχει το
πύργος
εντολή και το άλλο είναι το κέλυφος που τρέχει το σενάριο.
Πώς να βρείτε PID με την εντολή pgrep στο Linux
ο
πύργος
Η εντολή λειτουργεί λίγο σαν
πύργος
Κατά τη λήψη αναγνωριστικών διαδικασίας στο Linux. Ωστόσο, δεν βρίσκει μόνο διαδικασίες που ταιριάζουν ακριβώς με την ένδειξη αναζήτησης, επιστρέφει επίσης τα PID των διαδικασιών των οποίων το όνομα
περιέχει
το κείμενο αναζήτησης.
Ακολουθεί ένα παράδειγμα σε έναν υπολογιστή που έχει τον Firefox να τρέχει σε αυτό.
Όλες αυτές οι εντολές βρίσκουν τη διαδικασία Firefox και επιστρέφουν το PID. Αλλά αν μπείτε στην εντολή:
Από μόνη της, πώς θα ξέρετε αν το PGREP είχε βρει FI αρμόδιος x και όχι, ας πούμε, ένα dameon που ονομάζεται p αναβρατίζω MD;
Εάν προσθέσετε το
-μεγάλο
(Όνομα λίστας) Επιλογή, το PGREP θα απαριθμήσει το όνομα της διαδικασίας παράλληλα με το PID.
Εάν υπάρχουν πολλαπλές περιπτώσεις μιας διαδικασίας αντιστοίχισης, είναι όλα αναφερόμενα.
Σημειώστε ότι παρατίθενται με ανερχόμενη σειρά, η οποία είναι η αντίθετη σειρά προς την έξοδο από
πύργος
. Αναφέρονται από την παλαιότερη διαδικασία έως τη νεότερη διαδικασία. Όπως είδαμε με
πύργος
, δεν ανήκουν αναγκαστικά όλες οι διαδικασίες που αναφέρονται.
ο
-
(ID ID) Η επιλογή σάς επιτρέπει να αναζητήσετε διαδικασίες που ταιριάζουν με το κείμενο αναζήτησης και ανήκουν στο όνομα
χρήστης
.
Αυτή τη φορά βλέπουμε τρεις διαδικασίες bash στα αποτελέσματα. Το άλλο χρησιμοποιείται από
Μαρία
.
Και μπορούμε να ζητήσουμε να δούμε όλες τις διαδικασίες για έναν συγκεκριμένο χρήστη.
Για να δείτε την πλήρη γραμμή εντολών, χρησιμοποιήστε το
-ένα
(Πλήρης λίστα).
Μια λέξη για την ιδιοκτησία PID
Δεν ανήκουν όλες οι διαδικασίες συστήματος ο χρήστης ρίζας . Πολλοί είναι, φυσικά, αλλά όχι όλοι τους. Για παράδειγμα, αυτή η εντολή λειτουργεί:
Αποτυγχάνει επειδή
ρίζα
δεν διαθέτει αυτή τη διαδικασία. Ο πραγματικός ιδιοκτήτης είναι ένας χρήστης συστήματος που ονομάζεται "Avahi". Χρησιμοποιώντας το σωστό όνομα χρήστη, η εντολή λειτουργεί.