Εγχειρίδια για τη γραμμή εντολών

Man » Διαδικτυακό εγχειρίδιο lsof - λεπτομερής διαδικτυακή τεκμηρίωση για τη σελίδα man του lsof

🌍
lsof - εμφάνιση ανοικτών αρχείων

ΣΥΝΤΑΞΗ

lsof [ -?abChHlnNOPQRtUvVX ] [ -A A ] [ -c c ] [ +c c ] [ +|-d d ] [ +|-D D ] [ +|-e s ] [ +|-E ]
[  +|-f  [cfgGn]  ]  [ -F [f] ] [ -g [s] ] [ -i [i] ] [ -k k ] [ -K k ] [ +|-L [l] ] [ +|-m m ] [
+|-M ] [ -o [o] ] [ -p s ] [ +|-r [t[m<fmt>]] ] [ -s [p:s] ] [ -S [t] ] [ -T [t] ] [  -u  s  ]  [
+|-w ] [ -x [fl] ] [ -z [z] ] [ -Z [Z] ] [ -- ] [ονόματα]

ΠΕΡΙΓΡΑΦΗ

Η lsof έκδοση 4.99.4 εμφανίζει στην τυπική έξοδο πληροφορίες αρχείων που έχουν ανοίξει οι διεργασίες για τις ακόλουθες παραλλαγές UNIX:

Apple Darwin 9, Mac OS X 10, macOS 11 και νεότερες
FreeBSD 8.2 και νεότερες
Linux 2.1.72 και νεότερες
NetBSD 1.2 και νεότερες
OpenBSD 7.2 και νεότερες
Solaris 9, 10 και 11 και νεότερες
OpenIndiana 5.11 και νεότερες

(Δείτε την ενότητα ΔΙΑΝΟΜΗ αυτής της σελίδας εγχειριδίου για πληροφορίες σχετικά με τον τρόπο λήψης της πιο πρόσφατης έκδοσης lsof.)

Ένα ανοικτό αρχείο μπορεί να είναι ένα κανονικό αρχείο, ένας κατάλογος, ένα αρχείο ειδικού μπλοκ, ένα αρχείο ειδικού χαρακτήρα, μια εκτελούμενη αναφορά κειμένου, μια βιβλιοθήκη, μια ροή ή ένα αρχείο δικτύου (διαδικτυακή υποδοχή, αρχείο NFS ή υποδοχή τομέα UNIX). Ένα συγκεκριμένο αρχείο ή όλα τα αρχεία σε ένα σύστημα αρχείων μπορούν να επιλεγούν μέσω διαδρομής.

Αντί για μια μορφοποιημένη εμφάνιση, η lsof θα παράγει έξοδο που μπορεί να αναλυθεί από άλλα προγράμματα. Δείτε την περιγραφή της επιλογής -F και την ενότητα ΕΞΟΔΟΣ ΓΙΑ ΑΛΛΑ ΠΡΟΓΡΑΜΜΑΤΑ για περισσότερες πληροφορίες.

Εκτός από την παραγωγή μιας ενιαίας λίστας εξόδου, η lsof θα εκτελείται σε επαναλαμβανόμενη λειτουργία. Σε επαναλαμβανόμενη λειτουργία, θα παράγει έξοδο, θα καθυστερεί και στη συνέχεια θα επαναλαμβάνει τη λειτουργία εξόδου έως ότου σταματήσει με ένα σήμα διακοπής ή τερματισμού. Δείτε την περιγραφή της επιλογής +|-r [t[m<fmt>]] για περισσότερες πληροφορίες.

ΕΠΙΛΟΓΕΣ

Στην απουσία οποιωνδήποτε επιλογών, η lsof εμφανίζει όλα τα ανοικτά αρχεία που ανήκουν σε όλες τις ενεργές διεργασίες.

Εάν καθοριστεί οποιαδήποτε επιλογή αιτήματος λίστας, πρέπει να καθοριστούν ρητά και άλλες αιτήσεις λίστας, π.χ., εάν καθοριστεί η -U για την καταχώριση των αρχείων υποδοχής τομέα UNIX, τα αρχεία NFS δεν θα καταχωρηθούν εκτός εάν καθοριστεί επίσης η -N. ή εάν καθοριστεί μια λίστα χρηστών με την επιλογή -u, τα αρχεία υποδοχής τομέα UNIX που ανήκουν σε χρήστες που δεν περιλαμβάνονται στη λίστα δεν θα καταχωρηθούν εκτός εάν καθοριστεί επίσης η επιλογή -U.

Συνήθως, οι επιλογές λίστας που δηλώνονται ρητά συνδυάζονται με τη λογική OR - δηλαδή, η καθορισμένη επιλογή -i χωρίς διεύθυνση και η επιλογή -ufoo παράγει μια λίστα όλων των αρχείων δικτύου Ή αρχείων που ανήκουν σε διεργασίες που ανήκουν στον χρήστη "foo". Οι εξαιρέσεις είναι:

1 το όνομα σύνδεσης ή το αναγνωριστικό χρήστη (UID) που ορίζεται με τη λογική NOT, η οποία καθορίζεται με την επιλογή -u.

2 το αναγνωριστικό διεργασίας (PID) που ορίζεται με τη λογική NOT, η οποία καθορίζεται με την επιλογή -p.

3 το αναγνωριστικό ομάδας διεργασιών (PGID) που ορίζεται με τη λογική NOT, η οποία καθορίζεται με την επιλογή -g.

4 η εντολή `^` (αρνητική), η οποία καθορίζεται με την επιλογή -c.

5 οι εντολές `^` (αρνητικές) για την κατάσταση πρωτοκόλλου TCP ή UDP, οι οποίες καθορίζονται με την επιλογή -s [p:s].

Επειδή αντιπροσωπεύουν αποκλεισμούς, εφαρμόζονται χωρίς τη χρήση των τελεστών OR ή AND και τίθενται σε ισχύ πριν από οποιαδήποτε άλλη επιλογή κριτηρίων.

Η επιλογή -a μπορεί να χρησιμοποιηθεί για να συνδυαστούν οι επιλογές με τη χρήση του τελεστή AND. Για παράδειγμα, η χρήση των -a, -U και -ufoo θα δημιουργήσει μια λίστα μόνο με αρχεία UNIX socket που ανήκουν σε διεργασίες που εκτελούνται από τον χρήστη "foo".

Προσοχή: η επιλογή -a προκαλεί τη χρήση του τελεστή AND για όλες τις επιλογές επιλογής λίστας. Δεν μπορεί να χρησιμοποιηθεί για να προκαλέσει τη χρήση του τελεστή AND για επιλεγμένα ζεύγη επιλογών επιλογής, τοποθετώντας την μεταξύ αυτών, ακόμη και αν η τοποθέτηση εκεί είναι αποδεκτή. Όπου και αν τοποθετηθεί η επιλογή -a, προκαλεί τη χρήση του τελεστή AND για όλες τις επιλογές επιλογής.

Τα στοιχεία του ίδιου συνόλου επιλογής - ονόματα εντολών, περιγραφείς αρχείων, διευθύνσεις δικτύου, αναγνωριστικά διεργασιών, αναγνωριστικά χρηστών, ονόματα ζωνών, περιβάλλοντα ασφαλείας - συνδυάζονται σε ένα ενιαίο σύνολο που χρησιμοποιεί τον τελεστή OR και εφαρμόζεται πριν το αποτέλεσμα συμμετάσχει στη χρήση του τελεστή AND. Έτσι, για παράδειγμα, η χρήση των -, -, -a και -ufff,ggg θα επιλέξει τη λίστα των αρχείων που ανήκουν είτε στη συνδεδεμένη συνεδρία "fff" είτε στη συνδεδεμένη συνεδρία "ggg" και έχουν συνδέσεις δικτύου είτε στον κεντρικό υπολογιστή aaa.bbb είτε στον κεντρικό υπολογιστή ccc.ddd.

Οι επιλογές μπορούν να ομαδοποιηθούν μαζί μετά από ένα μόνο πρόθεμα - π.χ., το σύνολο επιλογών "-a -b -C" μπορεί να δηλωθεί ως -abC. Ωστόσο, επειδή οι τιμές είναι προαιρετικές μετά τα +|-f, -F, -g, -i, +|-L, -o, +|-r, -s, -S, -T, -x και -z, όταν δεν έχετε τιμές για αυτές, προσέξτε ώστε ο επόμενος χαρακτήρας να μην είναι διφορούμενος. Για παράδειγμα, το -Fn μπορεί να αντιπροσωπεύει τις επιλογές -F και -n ή μπορεί να αντιπροσωπεύει τον χαρακτήρα αναγνωριστικού πεδίου n που ακολουθεί την επιλογή -F. Όταν υπάρχει πιθανότητα ασάφειας, ξεκινήστε μια νέα επιλογή με έναν χαρακτήρα '-' - π.χ., "-F -n". Εάν η επόμενη επιλογή είναι ένα όνομα αρχείου, ακολουθήστε την πιθανώς διφορούμενη επιλογή με "--" - π.χ., "-F -- name".

Είτε το πρόθεμα "+" είτε το πρόθεμα "-" μπορεί να εφαρμοστεί σε μια ομάδα επιλογών. Οι επιλογές που δεν έχουν ξεχωριστές σημασίες για κάθε πρόθεμα - π.χ., -i - μπορούν να ομαδοποιηθούν κάτω από οποιοδήποτε από τα δύο προθέματα. Έτσι, για παράδειγμα, το "+M -i" μπορεί να δηλωθεί ως "+Mi" και η ομάδα σημαίνει το ίδιο με τις ξεχωριστές επιλογές. Προσέξτε την ομαδοποίηση προθεμάτων όταν μία ή περισσότερες επιλογές στην ομάδα έχουν ξεχωριστές σημασίες κάτω από διαφορετικά προθέματα - π.χ., +|-M. Το "-iM" δεν είναι η ίδια εντολή με το "-i +M". Όταν υπάρχει αμφιβολία, χρησιμοποιήστε ξεχωριστές επιλογές με τα κατάλληλα προθέματα.

-? -h Αυτές οι δύο ισοδύναμες επιλογές επιλέγουν μια λίστα εξόδου βοήθειας (χρήσης). Το lsof εμφανίζει μια συντομευμένη μορφή αυτής της εξόδου όταν ανιχνεύει ένα σφάλμα στις επιλογές που παρέχονται, αφού έχει εμφανίσει μηνύματα που εξηγούν κάθε σφάλμα. (Κάντε escape τον χαρακτήρα '?' όπως απαιτεί το shell σας.)

-a προκαλεί τη χρήση του τελεστή AND για τις επιλογές επιλογής λίστας, όπως περιγράφεται παραπάνω.

-A A είναι διαθέσιμο σε συστήματα που έχουν διαμορφωθεί για το AFS, των οποίων ο κώδικας πυρήνα AFS υλοποιείται μέσω δυναμικών μονάδων. Επιτρέπει στον χρήστη του lsof να καθορίσει το A ως εναλλακτικό αρχείο ονομάτων, όπου οι διευθύνσεις πυρήνα των δυναμικών μονάδων μπορούν να βρεθούν. Δείτε το FAQ του lsof (Η ενότητα FAQ δίνει την τοποθεσία του) για περισσότερες πληροφορίες σχετικά με τις δυναμικές μονάδες, τα σύμβολά τους και τον τρόπο με τον οποίο επηρεάζουν το lsof.

-b    προκαλεί το lsof να αποφεύγει τις συναρτήσεις του πυρήνα που ενδέχεται να προκαλέσουν μπλοκάρισμα - lstat(2), [readlink]({filename}../../readlink)(2) και [stat]({filename}../../stat)(2).

Δείτε τις ενότητες BLOCKS AND TIMEOUTS και AVOIDING KERNEL BLOCKS για πληροφορίες σχετικά με τη χρήση αυτής της επιλογής.

-c c      επιλέγει την λίστα των αρχείων για τις διαδικασίες που εκτελούν την εντολή η οποία ξεκινά με τους χαρακτήρες του c. Μπορούν να καθοριστούν πολλαπλές εντολές, χρησιμοποιώντας πολλαπλές επιλογές -c. Αυτές συνδυάζονται σε ένα ενιαίο σύνολο OR πριν συμμετάσχουν στην επιλογή AND.

Αν το c ξεκινά με ένα \`^\', τότε οι επόμενοι χαρακτήρες καθορίζουν ένα όνομα εντολής, οι διαδικασίες του οποίου θα αγνοηθούν (θα εξαιρεθούν).

Αν το c ξεκινά και τελειώνει με μια κάθετο (\'/'), οι χαρακτήρες μεταξύ των κάθετων ερμηνεύονται ως μια κανονική έκφραση. Οι μετα-χαρακτήρες του κελύφους στην κανονική έκφραση πρέπει να εισαχθούν για να αποτραπεί η ερμηνεία τους από το κέλυφος. Η κλειστή κάθετος μπορεί να ακολουθείται από τους ακόλουθους τροποποιητές:

b     η κανονική έκφραση είναι μια βασική.
i     αγνοεί την περίπτωση των γραμμάτων.
x     η κανονική έκφραση είναι μια εκτεταμένη (προεπιλογή).

Δείτε τις Συχνές Ερωτήσεις του lsof (Η ενότητα Συχνές Ερωτήσεις δίνει τη θέση της.) για περισσότερες πληροφορίες σχετικά με τις βασικές και εκτεταμένες κανονικές εκφράσεις.

Η απλή προδιαγραφή εντολής ελέγχεται πρώτα. Εάν αυτή η δοκιμή αποτύχει, εφαρμόζεται η κανονική έκφραση εντολής. Εάν η απλή δοκιμή εντολής επιτύχει, η δοκιμή κανονικής έκφρασης εντολής δεν πραγματοποιείται. Αυτό μπορεί να οδηγήσει σε μηνύματα «δεν βρέθηκε εντολή για την κανονική έκφραση:» όταν καθορίζεται η επιλογή -V του lsof.

+c w      καθορίζει τον μέγιστο αριθμό αρχικών χαρακτήρων του ονόματος, που παρέχεται από την διάλεκτο UNIX, της εντολής UNIX που σχετίζεται με μια διαδικασία, για να εκτυπωθεί στην στήλη COMMAND. (Η προεπιλογή του lsof είναι εννέα).

Σημειώστε ότι πολλές διαλέκτους UNIX δεν παρέχουν όλους τους χαρακτήρες του ονόματος εντολής στο lsof στα αρχεία και τις δομές από τις οποίες το lsof αποκτά το όνομα εντολής. Συχνά, οι διαλέκτοι περιορίζουν τον αριθμό των χαρακτήρων που παρέχονται σε αυτές τις πηγές. Για παράδειγμα, το Linux 2.4.27 και το Solaris 9 περιορίζουν το μήκος του ονόματος εντολής σε 16 χαρακτήρες.

Εάν το w είναι μηδέν ('0'), όλοι οι χαρακτήρες εντολής που παρέχονται στο lsof από την διάλεκτο UNIX θα εκτυπωθούν.

Εάν το w είναι μικρότερο από το μήκος του τίτλου της στήλης, \`\`COMMAND'', θα αυξηθεί σε αυτό το μήκος.

-C    απενεργοποιεί την αναφορά οποιωνδήποτε στοιχείων της διαδρομής από την προσωρινή μνήμη ονομάτων του πυρήνα. Δείτε την ενότητα KERNEL NAME CACHE για περισσότερες πληροφορίες.

+d s      προκαλεί το lsof να αναζητήσει όλες τις ανοιχτές παρουσίες του καταλόγου s και των αρχείων και των καταλόγων που περιέχει στο υψηλότερο επίπεδό του. Το +d ΔΕΝ διασχίζει τον κατάλογο, με ρίζα τον s.

Η επιλογή +D D μπορεί να χρησιμοποιηθεί για να ζητηθεί μια πλήρης αναζήτηση του καταλόγου, με ρίζα τον κατάλογο D.

Η επεξεργασία της επιλογής +d δεν ακολουθεί συμβολικούς συνδέσμους εντός του s, εκτός εάν έχουν επίσης καθοριστεί οι επιλογές -x ή -x l. Ούτε αναζητά ανοιχτά αρχεία σε σημεία προσάρτησης συστήματος αρχείων σε υποκαταλόγους του s, εκτός εάν έχουν επίσης καθοριστεί οι επιλογές -x ή -x f.

Σημείωση: Η εξουσία του χρήστη αυτής της επιλογής την περιορίζει στην αναζήτηση αρχείων για τα οποία ο χρήστης έχει άδεια να τα εξετάσει με τη συνάρτηση stat(2) του συστήματος.

-d s καθορίζει μια λίστα περιγραφέων αρχείων (FD) που θα αποκλειστούν ή θα συμπεριληφθούν στην έξοδο. Οι περιγραφείς αρχείων καθορίζονται στο διαχωρισμένο με κόμμα σύνολο s - π.χ. ``cwd,1,3'', ``^6,^2''. (Δεν θα πρέπει να υπάρχουν κενά στο σύνολο).

Η λίστα είναι λίστα αποκλεισμού εάν όλες οι καταχωρήσεις του συνόλου ξεκινούν με `^\'. Είναι λίστα συμπερίληψης εάν καμία καταχώρηση δεν ξεκινά με `^\'. Οι μικτές λίστες δεν επιτρέπονται.

Ένα εύρος αριθμών περιγραφέων αρχείων μπορεί να υπάρχει στο σύνολο, εφόσον κανένα από τα μέλη δεν είναι κενό, και τα δύο μέλη είναι αριθμοί και το τελικό μέλος είναι μεγαλύτερο από το αρχικό - π.χ. 0-7'' ή3-10''. Τα εύρη μπορούν να καθοριστούν για αποκλεισμό, εφόσον έχουν το πρόθεμα `^' - π.χ. ``^0-7'' αποκλείει όλους τους περιγραφείς αρχείων από 0 έως 7.

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

Όταν υπάρχουν μέλη αποκλεισμού και συμπερίληψης στο σύνολο, το lsof τα αναφέρει ως σφάλματα και εξέρχεται με μη μηδενικό κωδικό επιστροφής.

Δείτε την περιγραφή των τιμών περιγραφέων αρχείων (FD) στην ενότητα ΕΞΟΔΟΣ για περισσότερες πληροφορίες σχετικά με τις ονομασίες περιγραφέων αρχείων.

fd είναι ένα ψευδο-όνομα περιγραφέα αρχείου για τον καθορισμό ολόκληρου του εύρους των πιθανών αριθμών περιγραφέων αρχείων. Το fd δεν εμφανίζεται στη στήλη FD της εξόδου.

+D D προκαλεί το lsof να αναζητήσει όλες τις ανοιχτές παρουσίες του καταλόγου D και όλα τα αρχεία και τους καταλόγους που περιέχει σε πλήρες βάθος.

Η επεξεργασία της επιλογής +D δεν ακολουθεί συμβολικούς συνδέσμους εντός του D, εκτός εάν έχουν επίσης καθοριστεί οι επιλογές -x ή -x l. Ούτε αναζητά ανοιχτά αρχεία σε σημεία προσάρτησης συστήματος αρχείων σε υποκαταλόγους του D, εκτός εάν έχουν επίσης καθοριστεί οι επιλογές -x ή -x f.

Σημείωση: Η εξουσία του χρήστη αυτής της επιλογής την περιορίζει στην αναζήτηση αρχείων για τα οποία ο χρήστης έχει άδεια να τα εξετάσει με τη συνάρτηση stat(2) του συστήματος.

Επιπλέον σημείωση: Το lsof μπορεί να επεξεργαστεί αυτήν την επιλογή αργά και να απαιτήσει μεγάλη ποσότητα δυναμικής μνήμης για να το κάνει. Αυτό συμβαίνει επειδή πρέπει να κατεβεί ολόκληρο το δέντρο καταλόγων, με ρίζα το D, καλώντας το stat(2) για κάθε αρχείο και κατάλογο, δημιουργώντας μια λίστα με όλα τα αρχεία που βρίσκει και αναζητώντας σε αυτήν τη λίστα μια αντιστοιχία με κάθε ανοιχτό αρχείο. Όταν ο κατάλογος D είναι μεγάλος, αυτά τα βήματα μπορεί να διαρκέσουν πολύ χρόνο, επομένως χρησιμοποιήστε αυτήν την επιλογή με σύνεση.

-D D κατευθύνει τη χρήση του αρχείου προσωρινής αποθήκευσης συσκευών του lsof. Η χρήση αυτής της επιλογής είναι μερικές φορές περιορισμένη. Δείτε την ενότητα ΑΡΧΕΙΟ ΠΡΟΣΩΡΙΝΗΣ ΑΠΟΘΗΚΕΥΣΗΣ ΣΥΣΚΕΥΗΣ και τις ενότητες που ακολουθούν για περισσότερες πληροφορίες σχετικά με αυτήν την επιλογή.

-D πρέπει να ακολουθείται από ένα γράμμα συνάρτησης. το γράμμα συνάρτησης μπορεί προαιρετικά να ακολουθείται
από ένα όνομα διαδρομής. Το Lsof αναγνωρίζει αυτά τα γράμματα συνάρτησης:

? - αναφορά διαδρομών αρχείου προσωρινής αποθήκευσης συσκευών
b - δημιουργία του αρχείου προσωρινής αποθήκευσης συσκευών
i - αγνόηση του αρχείου προσωρινής αποθήκευσης συσκευών
r - ανάγνωση του αρχείου προσωρινής αποθήκευσης συσκευών
u - ανάγνωση και ενημέρωση του αρχείου προσωρινής αποθήκευσης συσκευών

Οι συναρτήσεις b, r και u, συνοδευόμενες από ένα όνομα διαδρομής, είναι μερικές φορές περιορισμένες. Όταν αυτές οι συναρτήσεις είναι περιορισμένες, δεν θα εμφανίζονται στην περιγραφή της επιλογής -D που συνοδεύει την έξοδο της επιλογής -h ή -?. Δείτε την ενότητα ΑΡΧΕΙΟ ΠΡΟΣΩΡΙΝΗΣ ΑΠΟΘΗΚΕΥΣΗΣ ΣΥΣΚΕΥΗΣ και τις ενότητες που ακολουθούν για περισσότερες πληροφορίες σχετικά με αυτές τις συναρτήσεις και πότε περιορίζονται.

Η συνάρτηση ? αναφέρει τις διαδρομές μόνο για ανάγνωση και τις διαδρομές εγγραφής που μπορεί να χρησιμοποιήσει το lsof για το αρχείο προσωρινής αποθήκευσης συσκευών, τα ονόματα τυχόν μεταβλητών περιβάλλοντος των οποίων οι τιμές θα εξετάσει το lsof κατά τον σχηματισμό της διαδρομής του αρχείου προσωρινής αποθήκευσης συσκευών και τη μορφή για τη διαδρομή του προσωπικού αρχείου προσωρινής αποθήκευσης συσκευών. (Κάντε escape τον χαρακτήρα `?' όπως απαιτεί το κέλυφός σας.)

Όταν είναι διαθέσιμες, οι συναρτήσεις b, r και u μπορούν να ακολουθούνται από τη διαδρομή του αρχείου προσωρινής αποθήκευσης συσκευών. Η τυπική προεπιλογή είναι .lsof_hostname στον κατάλογο βάσης του πραγματικού χρήστη ID που εκτελεί το lsof, αλλά αυτό θα μπορούσε να έχει αλλάξει κατά τη διαμόρφωση και τη μεταγλώττιση του lsof. (Η έξοδος των επιλογών -h και -? εμφανίζει την τρέχουσα προεπιλεγμένη προθήκη - π.χ. ``.lsof''.) Η κατάληξη, hostname, είναι το πρώτο στοιχείο του ονόματος του κεντρικού υπολογιστή που επιστρέφεται από τη συνάρτηση gethostname(2).

Όταν είναι διαθέσιμη, η συνάρτηση b κατευθύνει το lsof να δημιουργήσει ένα νέο αρχείο προσωρινής αποθήκευσης συσκευών στην προεπιλεγμένη ή καθορισμένη διαδρομή.

Η συνάρτηση i κατευθύνει το lsof να αγνοήσει το προεπιλεγμένο αρχείο προσωρινής αποθήκευσης συσκευών και να λάβει τις πληροφορίες του σχετικά με τις συσκευές μέσω απευθείας κλήσεων στον πυρήνα.

Η συνάρτηση r κατευθύνει το lsof να διαβάσει την προσωρινή αποθήκη συσκευών στην προεπιλεγμένη ή καθορισμένη διαδρομή, αλλά αποτρέπει τη δημιουργία ενός νέου αρχείου προσωρινής αποθήκευσης συσκευών όταν δεν υπάρχει ή το υπάρχον έχει εσφαλμένη δομή. Η συνάρτηση r, όταν καθορίζεται χωρίς όνομα διαδρομής, αποτρέπει το lsof από το να ενημερώσει ένα εσφαλμένο ή ξεπερασμένο αρχείο προσωρινής αποθήκευσης συσκευών ή να δημιουργήσει ένα νέο στη θέση του. Η συνάρτηση r είναι πάντα διαθέσιμη όταν καθορίζεται χωρίς όρισμα ονόματος διαδρομής. μπορεί να περιορίζεται από τα δικαιώματα της διαδικασίας lsof.

Όταν είναι διαθέσιμη, η συνάρτηση u κατευθύνει το lsof να διαβάσει το αρχείο προσωρινής αποθήκευσης συσκευών στην προεπιλεγμένη ή καθορισμένη διαδρομή, εάν είναι δυνατόν, και να το ξαναδημιουργήσει, εάν είναι απαραίτητο. Αυτή είναι η προεπιλεγμένη συνάρτηση αρχείου προσωρινής αποθήκευσης συσκευών όταν δεν έχει καθοριστεί καμία επιλογή -D.

+|-e s εξαιρεί το σύστημα αρχείων του οποίου το όνομα διαδρομής είναι s από το να υποβληθεί σε κλήσεις συναρτήσεων πυρήνα
που ενδέχεται να προκαλέσουν αποκλεισμό. Η επιλογή +e εξαιρεί τις κλήσεις συναρτήσεων πυρήνα [stat]({filename}../../stat)(2), lstat(2) και τις περισσότερες [readlink]({filename}../../readlink)(2). Η επιλογή -e εξαιρεί μόνο τις κλήσεις συναρτήσεων πυρήνα [stat]({filename}../../stat)(2) και lstat(2). Μπορούν να καθοριστούν πολλαπλά συστήματα αρχείων με ξεχωριστές προδιαγραφές +|-e και το καθένα μπορεί να έχει εξαιρεθεί ή όχι από τις κλήσεις [readlink]({filename}../../readlink)(2).

Αυτή η επιλογή έχει υλοποιηθεί μόνο για Linux.

ΠΡΟΣΟΧΗ: Αυτή η επιλογή μπορεί εύκολα να εφαρμοστεί εσφαλμένα σε άλλα συστήματα αρχείων εκτός από το επιθυμητό, επειδή χρησιμοποιεί το όνομα της διαδρομής και όχι τους πιο αξιόπιστους αριθμούς συσκευής και i-κόμβου.

(Οι αριθμοί συσκευής και i-κόμβου λαμβάνονται μέσω της ενδεχομένως αποκλειστικής κλήσης του kernel stat(2) και, επομένως, δεν είναι διαθέσιμοι, αλλά δείτε την επιλογή +|-m m ως πιθανό εναλλακτικό τρόπο για την παροχή αριθμών συσκευής.) Χρησιμοποιήστε αυτήν την επιλογή με μεγάλη προσοχή και καθορίστε πλήρως το όνομα της διαδρομής του συστήματος αρχείων από το οποίο θέλετε να εξαιρέσετε.

Όταν αναφέρονται ανοιχτά αρχεία σε εξαιρούμενα συστήματα αρχείων, ενδέχεται να μην είναι δυνατή η λήψη όλων των πληροφοριών τους. Επομένως, ορισμένες στήλες πληροφοριών θα είναι κενές, ο χαρακτήρας ``UNKN'' θα προτάσσεται στις τιμές στη στήλη ΤΥΠΟΣ και η σχετική επιλογή εξαίρεσης θα προσαρτάται σε παρενθέσεις στο τέλος της στήλης ΟΝΟΜΑ. (Ορισμένες πληροφορίες σχετικά με τον αριθμό συσκευής ενδέχεται να είναι διαθέσιμες μέσω της επιλογής +|-m m.)

+|-E     +E καθορίζει ότι τα Linux pipes, τα Linux UNIX sockets, τα Linux INET(6) sockets που έχουν κλείσει σε μια τοπική
μηχανή, τα Linux pseudoterminal files, η υλοποίηση POSIX Message Queue στο Linux και τα
Linux eventfd θα εμφανίζονται με πληροφορίες για το τερματικό σημείο και τα αρχεία των τερματικών σημείων θα εμφανίζονται επίσης.

Σημείωση 1: Οι πληροφορίες για το αρχείο τερματικού σημείου UNIX socket είναι διαθέσιμες μόνο όταν η γραμμή με τις ενεργοποιημένες δυνατότητες της εξόδου -v περιέχει το uxsockept, και οι πληροφορίες για το τερματικό σημείο pseudoterminal είναι διαθέσιμες μόνο όταν η γραμμή με τις ενεργοποιημένες δυνατότητες περιέχει το ptyept.

Σημείωση 2: Οι πληροφορίες για το αρχείο τερματικού σημείου POSIX Message Queue είναι διαθέσιμες μόνο όταν το σύστημα αρχείων mqueue είναι συνδεδεμένο.

Οι πληροφορίες για το τερματικό σημείο του pipe εμφανίζονται στη στήλη ΟΝΟΜΑ με τη μορφή ``PID,cmd,FDmode'', όπου το PID είναι το αναγνωριστικό διαδικασίας του τερματικού σημείου, το cmd είναι η εντολή της διαδικασίας του τερματικού σημείου, το FD είναι ο περιγραφέας του αρχείου του τερματικού σημείου και το mode είναι η λειτουργία πρόσβασης του αρχείου του τερματικού σημείου.

Οι πληροφορίες για το τερματικό σημείο pseudoterminal εμφανίζονται στη στήλη ΟΝΟΜΑ ως ->/dev/ptsmin PID,cmd,FDmode'' ήPID,cmd,FDmode''. Η πρώτη μορφή είναι για τη συσκευή master, η δεύτερη για τη συσκευή slave. Το min είναι ο δευτερεύων αριθμός συσκευής slave και τα PID, cmd, FD και mode είναι τα ίδια με τις πληροφορίες για το τερματικό σημείο του pipe. Σημείωση: Οι πληροφορίες για το τερματικό σημείο pseudoterminal είναι διαθέσιμες μόνο όταν η γραμμή με τις ενεργοποιημένες δυνατότητες της εξόδου -v περιέχει το ptyept. Επιπλέον, αυτή η δυνατότητα λειτουργεί σε πυρήνες Linux άνω της έκδοσης 4.13.0.

Οι πληροφορίες για το αρχείο τερματικού σημείου UNIX socket εμφανίζονται στη στήλη ΟΝΟΜΑ με τη μορφή
``type=TYPE ->INO=INODE PID,cmd,FDmode'', όπου το TYPE είναι ο τύπος socket, το INODE είναι ο αριθμός i-κόμβου του συνδεδεμένου socket και τα PID, cmd, FD και mode είναι τα ίδια με τις πληροφορίες για το τερματικό σημείο του pipe. Σημείωση: Οι πληροφορίες για το αρχείο τερματικού σημείου UNIX socket είναι διαθέσιμες μόνο όταν η γραμμή με τις ενεργοποιημένες δυνατότητες της εξόδου -v περιέχει το uxsockept.

Οι πληροφορίες σχετικά με το αρχείο socket INET εισάγονται στην τιμή στη στήλη NAME με τη μορφή
`` -> PID,cmd,FDmode'', όπου τα PID, cmd, FD και mode είναι τα ίδια με τις πληροφορίες για τα pipe. Οι πληροφορίες σχετικά με το endpoint είναι διαθέσιμες μόνο εάν το socket χρησιμοποιείται για τοπική IPC· και τα δύο endpoints συνδέονται στην ίδια τοπική διεύθυνση IPv4 ή IPv6.

Οι πληροφορίες σχετικά με το αρχείο POSIX Message Queue εμφανίζονται στη στήλη NAME στην ίδια μορφή με αυτές των pipe.

Οι πληροφορίες σχετικά με το endpoint eventfd εμφανίζονται στη στήλη NAME στην ίδια μορφή με αυτές των pipe. Αυτή η δυνατότητα λειτουργεί σε πυρήνες Linux άνω της έκδοσης 5.2.0.

Πολλές εμφανίσεις αυτών των πληροφοριών μπορούν να εμφανιστούν στη στήλη NAME ενός αρχείου.

-E καθορίζει ότι τα υποστηριζόμενα αρχεία endpoint θα εμφανίζονται με πληροφορίες endpoint, αλλά όχι τα αρχεία των endpoints.

+|-f [cfgGn]
Το f από μόνο του καθορίζει τον τρόπο με τον οποίο θα ερμηνεύονται τα ορίσματα ονομάτων διαδρομών. Όταν ακολουθείται από τα c, f, g, G ή n σε οποιονδήποτε συνδυασμό, καθορίζει ότι η καταχώρηση πληροφοριών δομής αρχείου πυρήνα θα ενεργοποιηθεί (`+`) ή θα απενεργοποιηθεί (`-`).

Κανονικά, ένα όρισμα ονόματος διαδρομής θεωρείται όνομα συστήματος αρχείων εάν ταιριάζει με ένα όνομα καταλόγου στο οποίο έχει γίνει mount, όπως αναφέρεται από την εντολή [mount](filename:mount.md)(8), ή εάν αντιπροσωπεύει μια συσκευή μπλοκ, που αναφέρεται στην έξοδο mount και σχετίζεται με ένα όνομα καταλόγου στο οποίο έχει γίνει mount. Όταν καθορίζεται το +f, όλα τα ορίσματα ονομάτων διαδρομών θα θεωρούνται ονόματα συστημάτων αρχείων και το lsof θα παράγει σφάλμα εάν κάποια από αυτά δεν είναι. Αυτό μπορεί να είναι χρήσιμο, για παράδειγμα, όταν το όνομα του συστήματος αρχείων (συσκευή στην οποία έχει γίνει mount) δεν είναι μια συσκευή μπλοκ. Αυτό συμβαίνει για ορισμένα συστήματα αρχείων CD-ROM.

Όταν καθορίζεται το -f από μόνο του, όλα τα ορίσματα ονομάτων διαδρομών θα θεωρούνται απλά αρχεία. Έτσι, για παράδειγμα, τα ορίσματα ``-f -- /'' κατευθύνουν το lsof να αναζητήσει ανοιχτά αρχεία με όνομα διαδρομής `/`, και όχι όλα τα ανοιχτά αρχεία στο σύστημα αρχείων `/` (ρίζα).

Προσέξτε να βεβαιωθείτε ότι τα +f και -f τερματίζονται σωστά και δεν ακολουθούνται από έναν χαρακτήρα (π.χ. του ονόματος του αρχείου ή του συστήματος αρχείων) που μπορεί να ληφθεί ως παράμετρος. Για παράδειγμα, χρησιμοποιήστε ``--'' μετά τα +f και -f, όπως στα παρακάτω παραδείγματα.

$ lsof +f -- /file/system/name
$ lsof -f -- /file/name

Η καταχώρηση πληροφοριών από τις δομές αρχείων πυρήνα, που ζητείται με την επιλογή +f [cfgGn], συνήθως απενεργοποιείται και δεν είναι διαθέσιμη εξ ολοκλήρου ή μερικώς για ορισμένες εκδόσεις - π.χ. πυρήνες Linux που βασίζονται στο /proc κάτω από την έκδοση 2.6.22. Όταν το πρόθεμα του f είναι ένα σύμβολο συν (`+`), αυτοί οι χαρακτήρες ζητούν πληροφορίες δομής αρχείου:

c    μετρητής χρήσης δομής αρχείου (όχι Linux)
f    διεύθυνση δομής αρχείου (όχι Linux)
g    συντομογραφίες σημαίας αρχείου (Linux 2.6.22 και νεότερη έκδοση)

Συντομογραφία.   Σημαία στον κώδικα C (δείτε το open(2))

W         O_WRONLY
RW        O_RDWR
CR        O_CREAT
EXCL      O_EXCL
NTTY      O_NOCTTY
TR        O_TRUNC
AP        O_APPEND
ND        O_NDELAY
SYN       O_SYNC
ASYN      O_ASYNC
DIR       O_DIRECT
DTY       O_DIRECTORY
NFLK      O_NOFOLLOW
NATM      O_NOATIME
DSYN      O_DSYNC
RSYN      O_RSYNC
LG        O_LARGEFILE
CX        O_CLOEXEC
TMPF      O_TMPFILE

G   σημαίες αρχείου σε δεκαεξαδική μορφή (Linux 2.6.22 και νεότερες εκδόσεις)
n   διεύθυνση κόμβου δομής αρχείου (όχι Linux)

Όταν το πρόθεμα είναι μείον (`-'), οι ίδιοι χαρακτήρες απενεργοποιούν την εμφάνιση των υποδεικνυόμενων τιμών.

Οι διευθύνσεις δομής αρχείου, οι μετρήσεις χρήσης, οι σημαίες και οι διευθύνσεις κόμβων μπορούν να χρησιμοποιηθούν για την ευκολότερη ανίχνευση πανομοιότυπων αρχείων που κληρονομούνται από θυγατρικές διεργασίες και πανομοιότυπων αρχείων που χρησιμοποιούνται από διαφορετικές διεργασίες. Η έξοδος των στηλών του lsof μπορεί να ταξινομηθεί κατά τις στήλες εξόδου που περιέχουν τις τιμές και να παρατεθεί για τον εντοπισμό πανομοιότυπης χρήσης αρχείων ή η έξοδος πεδίων του lsof μπορεί να αναλυθεί από ένα σενάριο μεταεπεξεργασίας AWK ή Perl ή από ένα πρόγραμμα C.

-F f    καθορίζει μια λίστα χαρακτήρων, f, που επιλέγει τα πεδία που θα εξάγονται για επεξεργασία από
ένα άλλο πρόγραμμα, καθώς και τον χαρακτήρα που τερματίζει κάθε πεδίο εξόδου. Κάθε πεδίο που θα
εξαχθεί καθορίζεται με έναν μόνο χαρακτήρα στο f. Ο τερματιστής πεδίου έχει προεπιλογή NL,
αλλά μπορεί να αλλάξει σε NUL (000). Δείτε την ενότητα ΕΞΑΓΩΓΗ ΓΙΑ ΑΛΛΑ ΠΡΟΓΡΑΜΜΑΤΑ για μια περιγραφή των
χαρακτήρων αναγνώρισης πεδίων και της διαδικασίας εξόδου πεδίων.

Όταν η λίστα χαρακτήρων επιλογής πεδίων είναι κενή, επιλέγονται όλα τα τυπικά πεδία (εκτός από το πεδίο συσκευής ακατέργαστων δεδομένων, το πεδίο πλαισίου ασφαλείας και το πεδίο ζώνης για λόγους συμβατότητας) και χρησιμοποιείται ο τερματιστής πεδίου NL.

Όταν η λίστα χαρακτήρων επιλογής πεδίων περιέχει μόνο ένα μηδέν (`0'), επιλέγονται όλα τα πεδία (εκτός από το πεδίο συσκευής ακατέργαστων δεδομένων) και χρησιμοποιείται ο χαρακτήρας τερματισμού NUL.

Άλλοι συνδυασμοί πεδίων και των σχετικών χαρακτήρων τερματισμού πεδίων πρέπει να οριστούν με ρητές εγγραφές στο f, όπως περιγράφεται στην ενότητα ΕΞΑΓΩΓΗ ΓΙΑ ΑΛΛΑ ΠΡΟΓΡΑΜΜΑΤΑ.

Όταν ένας χαρακτήρας επιλογής πεδίου αναγνωρίζει ένα στοιχείο που το lsof δεν καταγράφει κανονικά - π.χ., PPID, που επιλέγεται με την προδιαγραφή -R του χαρακτήρα πεδίου - π.χ., ``-FR'' - επιλέγει επίσης την καταγραφή του στοιχείου.

Όταν η λίστα χαρακτήρων επιλογής πεδίων περιέχει τον μεμονωμένο χαρακτήρα `?', το lsof θα εμφανίσει μια λίστα βοήθειας με τους χαρακτήρες αναγνώρισης πεδίων. (Αποφύγετε τον χαρακτήρα `?' όπως απαιτεί το κέλυφός σας.)

-g [s]  αποκλείει ή επιλέγει την καταγραφή αρχείων για τις διεργασίες των οποίων τα προαιρετικά αναγνωριστικά
ομάδας διεργασιών (PGID) περιέχονται στο σύνολο s που χωρίζεται με κόμματα - π.χ., ``123'' ή
``123,^456''. (Δεν πρέπει να υπάρχουν κενά στο σύνολο.)

Οι αριθμοί PGID που ξεκινούν με \`^' (άρνηση) αντιπροσωπεύουν αποκλεισμούς.

Πολλαπλοί αριθμοί PGID ενώνονται σε ένα μόνο σύνολο ORed πριν συμμετάσχουν στην επιλογή AND. Ωστόσο, οι αποκλεισμοί PGID εφαρμόζονται χωρίς ORing ή ANDing και τίθενται σε ισχύ πριν από άλλα κριτήρια επιλογής.

Η επιλογή -g ενεργοποιεί επίσης την εμφάνιση των αριθμών PGID. Όταν καθορίζεται χωρίς ένα σύνολο PGID, αυτό είναι όλο που κάνει.

-H  καθορίζει στο lsof να εκτυπώσει μεγέθη αναγνώσιμα από τον άνθρωπο, π.χ. 123.4K 456.7M.

-i [i]  επιλέγει την καταγραφή αρχείων των οποίων οποιαδήποτε διεύθυνση διαδικτύου ταιριάζει με τη διεύθυνση
που καθορίζεται στο i. Εάν δεν καθοριστεί διεύθυνση, αυτή η επιλογή επιλέγει την καταγραφή όλων των
αρχείων διαδικτύου και δικτύου 25 (HP-UX).

Εάν καθοριστεί το -i4 ή το -i6 χωρίς να ακολουθεί διεύθυνση, εμφανίζονται μόνο τα αρχεία του καθορισμένου τύπου IP, IPv4 ή IPv6. (Μια προδιαγραφή IPv6 μπορεί να χρησιμοποιηθεί μόνο εάν η έκδοση υποστηρίζει το IPv6, όπως υποδεικνύεται από τα [46] και IPv[46] στην έξοδο του lsof -h ή -?). Η διαδοχική προδιαγραφή των -i4, ακολουθούμενη από το -i6, είναι η ίδια με την προδιαγραφή του -i, και αντίστροφα. Η προδιαγραφή του -i4 ή του -i6 μετά το -i είναι η ίδια με την προδιαγραφή του -i4 ή του -i6 από μόνη της.

Μπορούν να καθοριστούν πολλαπλές διευθύνσεις (έως και 100) με πολλαπλές επιλογές -i. Συνδυάζονται σε ένα ενιαίο σύνολο με τη λογική OR πριν συμμετάσχουν στην επιλογή με τις επιλογές AND.

Μια διεύθυνση διαδικτύου καθορίζεται με τη μορφή (τα στοιχεία σε αγκύλες είναι προαιρετικά):

[46][πρωτόκολλο][@όνομα_κεντρικού_υπολογιστή|διεύθυνση_κεντρικού_υπολογιστή][:υπηρεσία|θύρα]

όπου:
46 καθορίζει την έκδοση IP, IPv4 ή IPv6,
που ισχύει για την ακόλουθη διεύθυνση.
Το '6' μπορεί να καθοριστεί μόνο εάν η έκδοση
UNIX υποστηρίζει το IPv6. Εάν δεν καθοριστεί ούτε το '4' ούτε το
'6', η ακόλουθη διεύθυνση ισχύει για όλες τις εκδόσεις IP.
πρωτόκολλο είναι το όνομα του πρωτοκόλλου - TCP, UDP ή UDPLITE.
όνομα_κεντρικού_υπολογιστή είναι ένα όνομα κεντρικού υπολογιστή διαδικτύου. Εκτός εάν καθοριστεί μια συγκεκριμένη έκδοση IP,
τα ανοικτά αρχεία δικτύου που σχετίζονται με ονόματα κεντρικών υπολογιστών
όλων των εκδόσεων θα επιλεγούν.
διεύθυνση_κεντρικού_υπολογιστή είναι μια αριθμητική διεύθυνση IPv4 σε δεκαδική μορφή ή μια αριθμητική διεύθυνση IPv6 σε δεκαεξαδική μορφή,
περικλειόμενη σε αγκύλες, εάν η έκδοση UNIX υποστηρίζει το IPv6. Όταν επιλεγεί μια έκδοση IP, μόνο οι αριθμητικές διευθύνσεις της μπορούν να καθοριστούν.
υπηρεσία είναι ένα όνομα από το `/etc/services` - π.χ., smtp ή μια λίστα αυτών.
θύρα είναι ένας αριθμός θύρας ή μια λίστα αυτών.

Οι επιλογές IPv6 μπορούν να χρησιμοποιηθούν μόνο εάν η έκδοση UNIX υποστηρίζει το IPv6. Για να δείτε εάν η έκδοση υποστηρίζει το IPv6, εκτελέστε το `lsof` και καθορίστε την επιλογή `-h` ή `-?` (βοήθεια). Εάν η προβαλλόμενη περιγραφή της επιλογής `-i` περιέχει τα `[46]` και `IPv[46]`, το IPv6 υποστηρίζεται.

Οι αριθμητικές διευθύνσεις και τα ονόματα κεντρικών υπολογιστών IPv4 δεν μπορούν να καθοριστούν εάν η επιλογή δικτύου περιορίζεται στο IPv6 με το `-i 6`. Οι αριθμητικές διευθύνσεις και τα ονόματα κεντρικών υπολογιστών IPv6 δεν μπορούν να καθοριστούν εάν η επιλογή δικτύου περιορίζεται στο IPv4 με το `-i 4`. Όταν η διεύθυνση ενός ανοικτού αρχείου δικτύου IPv4 αντιστοιχίζεται σε μια διεύθυνση IPv6, ο τύπος του ανοικτού αρχείου θα είναι IPv6, όχι IPv4, και η προβολή του θα επιλεγεί από το '6', όχι από το '4'.

Πρέπει να παρέχεται τουλάχιστον ένα στοιχείο διεύθυνσης - 4, 6, πρωτόκολλο, όνομα_κεντρικού_υπολογιστή, διεύθυνση_κεντρικού_υπολογιστή ή υπηρεσία. Ο χαρακτήρας @, που βρίσκεται στην αρχή της προδιαγραφής κεντρικού υπολογιστή, απαιτείται πάντα, όπως και το `:', που βρίσκεται στην αρχή της προδιαγραφής θύρας. Καθορίστε είτε όνομα κεντρικού υπολογιστή είτε διεύθυνση κεντρικού υπολογιστή. Καθορίστε είτε μια λίστα ονομάτων υπηρεσιών είτε μια λίστα αριθμών θυρών. Εάν καθοριστεί μια λίστα ονομάτων υπηρεσιών, το πρωτόκολλο ενδέχεται επίσης να χρειαστεί να καθοριστεί εάν οι αριθμοί θυρών TCP, UDP και UDPLITE για το όνομα της υπηρεσίας είναι διαφορετικοί. Χρησιμοποιήστε οποιαδήποτε περίπτωση - πεζά ή κεφαλαία - για το πρωτόκολλο.


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

Ακολουθούν μερικά παραδείγματα διευθύνσεων:

-i6 - μόνο IPv6
TCP:25 - TCP και θύρα 25
@1.2.3.4 - Διεύθυνση κεντρικού υπολογιστή IPv4 στο Διαδίκτυο 1.2.3.4
@[3ffe:1ebc::1]:1234 - Διεύθυνση κεντρικού υπολογιστή IPv6 στο Διαδίκτυο
3fe:1ebc::1, θύρα 1234
UDP:who - Υπηρεσία UDP who στη θύρα
_:513 - TCP, θύρα 513 και όνομα κεντρικού υπολογιστή lsof.itap
tcp@foo:1-10,smtp,99 - TCP, θύρες 1 έως 10,
όνομα υπηρεσίας smtp, θύρα 99, όνομα κεντρικού υπολογιστή foo
tcp@bar:1-smtp - TCP, θύρες 1 έως smtp, κεντρικός υπολογιστής bar
:time - είτε TCP, UDP είτε UDPLITE, υπηρεσία time στη θύρα

-K k επιλέγει την καταχώρηση εργασιών (συμπλεγμάτων) διεργασιών, σε διαλέκτους στις οποίες υποστηρίζεται η αναφορά εργασιών (συμπλεγμάτων). (Εάν η έξοδος βοήθειας, δηλαδή η έξοδος των επιλογών -h ή -?, εμφανίζει αυτήν την επιλογή, τότε η αναφορά εργασιών (συμπλεγμάτων) υποστηρίζεται από τη διάλεκτο.)

Εάν το -K ακολουθείται από μια τιμή, k, πρέπει να είναι ``i''. Αυτό προκαλεί την αγνόηση των εργασιών από το lsof, ιδιαίτερα στην προεπιλεγμένη περίπτωση, όπου καταχωρούνται τα πάντα, όταν δεν καθορίζονται άλλες επιλογές.

Όταν τα -K και -a καθορίζονται και τα δύο στο Linux και οι εργασίες μιας κύριας διεργασίας επιλέγονται από άλλες επιλογές, η κύρια διεργασία θα καταχωρηθεί επίσης σαν να ήταν εργασία, αλλά χωρίς αναγνωριστικό εργασίας. (Δείτε την περιγραφή της στήλης TID στην ενότητα ΕΞΟΔΟΣ.)

Όταν η έκδοση FreeBSD υποστηρίζει συμπλέγματα, όλα τα συμπλέγματα θα καταχωρηθούν με τα αναγνωριστικά τους.

Γενικά, τα συμπλέγματα και οι εργασίες κληρονομούν τα αρχεία του καλούντος, αλλά μπορεί να κλείσουν μερικά και να ανοίξουν άλλα, οπότε το lsof αναφέρει πάντα όλα τα ανοιχτά αρχεία των συμπλεγμάτων και των εργασιών.

-k k καθορίζει ένα αρχείο λίστας ονομάτων πυρήνα, k, αντί του /vmunix, /mach, κ.λπ. Το -k δεν είναι διαθέσιμο στο AIX σε συστήματα IBM RISC/System 6000.

-l αναστέλλει τη μετατροπή των αριθμών αναγνωριστικού χρήστη σε ονόματα σύνδεσης. Είναι επίσης χρήσιμο όταν η αναζήτηση ονόματος σύνδεσης δεν λειτουργεί σωστά ή είναι αργή.

+|-L [l] ενεργοποιεί (`+') ή απενεργοποιεί (`-') την καταχώρηση των αριθμών συνδέσμων αρχείων, όπου είναι διαθέσιμοι - π.χ., δεν είναι διαθέσιμοι για υποδοχές ή τα περισσότερα FIFOs και σωλήνες.

Όταν το +L καθορίζεται χωρίς έναν ακόλουθο αριθμό, όλοι οι αριθμοί συνδέσμων θα καταχωρηθούν. Όταν το -L καθορίζεται (η προεπιλογή), κανένας αριθμός συνδέσμου δεν θα καταχωρηθεί.

Όταν το +L ακολουθείται από έναν αριθμό, μόνο τα αρχεία που έχουν έναν αριθμό συνδέσμου μικρότερο από αυτόν τον αριθμό θα καταχωρηθούν. (Δεν μπορεί να ακολουθήσει κανένας αριθμός το -L). Μια προδιαγραφή της μορφής +L1'' θα επιλέξει τα ανοιχτά αρχεία που έχουν αποσυνδεθεί. Μια προδιαγραφή της μορφής+aL1 '' θα επιλέξει τα ανοιχτά αρχεία που έχουν αποσυνδεθεί στο καθορισμένο σύστημα αρχείων.

Για άλλες συγκρίσεις αριθμών συνδέσμων, χρησιμοποιήστε την έξοδο πεδίων (-F) και ένα μετα-επεξεργαστικό σενάριο ή πρόγραμμα.

+|-m m καθορίζει ένα εναλλακτικό αρχείο μνήμης πυρήνα ή ενεργοποιεί την επεξεργασία συμπληρωματικών πινάκων προσάρτησης.

Η επιλογή -m m καθορίζει ένα αρχείο μνήμης πυρήνα, m, στη θέση του /dev/kmem ή /dev/mem - π.χ., ένα αρχείο αποτύπωσης σφαλμάτων.

Η επιλογή +m ζητά να γραφτεί ένα συμπληρωματικό αρχείο τοποθέτησης στην τυπική έξοδο. Όλες οι άλλες επιλογές αγνοούνται σιωπηρά.

Θα υπάρχει μια γραμμή στο συμπληρωματικό αρχείο τοποθέτησης για κάθε τοποθετημένο σύστημα αρχείων, που περιέχει τον κατάλογο του τοποθετημένου συστήματος αρχείων, ακολουθούμενο από ένα μόνο κενό, ακολουθούμενο από τον αριθμό συσκευής σε δεκαεξαδική μορφή "0x" - π.χ.,

/ 0x801

Το lsof μπορεί να χρησιμοποιήσει το συμπληρωματικό αρχείο τοποθέτησης για να λάβει αριθμούς συσκευών για συστήματα αρχείων όταν δεν μπορεί να τα λάβει μέσω του stat(2) ή του lstat(2).

Η επιλογή +m m προσδιορίζει ότι το m είναι ένα συμπληρωματικό αρχείο τοποθέτησης.

Σημείωση: Οι επιλογές +m και +m m δεν είναι διαθέσιμες για όλες τις υποστηριζόμενες διαλέκτους. Ελέγξτε την έξοδο των επιλογών -h ή -? του lsof για να δείτε εάν οι επιλογές +m και +m m είναι διαθέσιμες.

+|-M     Ενεργοποιεί (+) ή απενεργοποιεί (-) την αναφορά εγγραφών διαχειριστή θυρών για τοπικές θύρες TCP, UDP και UDPLITE, όπου η αντιστοίχιση θυρών υποστηρίζεται. (Δείτε την τελευταία παράγραφο αυτής της περιγραφής επιλογών για πληροφορίες σχετικά με το πού υποστηρίζεται η αναφορά εγγραφών διαχειριστή θυρών.)

Η προεπιλεγμένη λειτουργία αναφοράς ορίζεται από τον δημιουργό του lsof με το HASPMAPENABLED #define στο αρχείο κεφαλίδας machine.h της διαλέκτου. το lsof διανέμεται με το HASPMAPENABLED #define απενεργοποιημένο, επομένως η αναφορά διαχειριστή θυρών είναι απενεργοποιημένη από προεπιλογή και πρέπει να ζητηθεί με το +M. Η καθορισμένη επιλογή -h ή -? του lsof θα αναφέρει την προεπιλεγμένη λειτουργία. Η απενεργοποίηση της αναφοράς διαχειριστή θυρών όταν είναι ήδη απενεργοποιημένη ή η ενεργοποίησή της όταν είναι ήδη ενεργοποιημένη είναι αποδεκτή. Όταν είναι ενεργοποιημένη η αναφορά διαχειριστή θυρών, το lsof εμφανίζει την εγγραφή διαχειριστή θυρών (εάν υπάρχει) για τοπικές θύρες TCP, UDP ή UDPLITE σε αγκύλες αμέσως μετά τους αριθμούς θυρών ή τα ονόματα υπηρεσιών - π.χ., ":1234[όνομα]" ή ":name[100083]". Οι πληροφορίες εγγραφής μπορεί να είναι ένα όνομα ή ένας αριθμός, ανάλογα με αυτό που παρέχει το πρόγραμμα εγγραφής στον διαχειριστή θυρών όταν εγγράφει τη θύρα.

Όταν είναι ενεργοποιημένη η αναφορά διαχειριστή θυρών, το lsof μπορεί να εκτελείται λίγο πιο αργά ή ακόμη και να σταματήσει όταν η πρόσβαση στον διαχειριστή θυρών γίνεται υπερφορτωμένη ή σταματά. Αντιστρέψτε τη λειτουργία αναφοράς για να προσδιορίσετε εάν η αναφορά διαχειριστή θυρών επιβραδύνει ή σταματά το lsof.

Για σκοπούς αναφοράς εγγραφής διαχειριστή θυρών, το lsof θεωρεί μια θύρα TCP, UDP ή UDPLITE ως τοπική εάν: βρίσκεται στο τοπικό μέρος της περιέχουσας δομής πυρήνα· ή εάν βρίσκεται στο εξωτερικό μέρος της περιέχουσας δομής πυρήνα και οι τοπικές και εξωτερικές διευθύνσεις διαδικτύου είναι οι ίδιες· ή εάν βρίσκεται στο εξωτερικό μέρος της περιέχουσας δομής πυρήνα και η εξωτερική διεύθυνση διαδικτύου είναι INADDR_LOOPBACK (127.0.0.1). Αυτός ο κανόνας μπορεί να κάνει το lsof να αγνοεί ορισμένες εξωτερικές θύρες σε μηχανές με πολλαπλές διεπαφές όταν η εξωτερική διεύθυνση διαδικτύου βρίσκεται σε διαφορετική διεπαφή από την τοπική.


Δείτε τις Συχνές Ερωτήσεις του lsof (Η ενότητα Συχνές Ερωτήσεις δίνει την τοποθεσία της) για περαιτέρω συζήτηση σχετικά με τα ζητήματα αναφοράς εγγραφής στο portmapper.

Η αναφορά εγγραφής στο portmapper υποστηρίζεται μόνο σε διαλέκτους που διαθέτουν αρχεία κεφαλίδας RPC. (Ορισμένες διανομές Linux με GlibC 2.14 δεν τις διαθέτουν.) Όταν υποστηρίζεται η αναφορά εγγραφής στο portmapper, η έξοδος βοήθειας -h ή -? θα δείχνει την επιλογή +|-M.

-n  αποτρέπει τη μετατροπή των αριθμών δικτύου σε ονόματα κεντρικού υπολογιστή για αρχεία δικτύου. Η αποτροπή της μετατροπής μπορεί να κάνει το lsof να εκτελείται ταχύτερα. Είναι επίσης χρήσιμο όταν η αναζήτηση ονομάτων κεντρικού υπολογιστή δεν λειτουργεί σωστά.

-N  επιλέγει την καταχώρηση αρχείων NFS.

-o  εντολή στο lsof να εμφανίζει το offset αρχείου ανά πάσα στιγμή. Προκαλεί την αλλαγή της επικεφαλίδας στήλης ΕΞΟΔΟΣ/OFFSET σε OFFSET. Σημείωση: σε ορισμένες διαλέκτους UNIX, το lsof δεν μπορεί να λάβει ακριβείς ή συνεπείς πληροφορίες offset αρχείου από τις πηγές δεδομένων του πυρήνα, μερικές φορές απλώς για συγκεκριμένους τύπους αρχείων (π.χ., αρχεία socket). Ανατρέξτε στις Συχνές Ερωτήσεις του lsof (Η ενότητα Συχνές Ερωτήσεις δίνει την τοποθεσία της) για περισσότερες πληροφορίες.

Οι επιλογές -o και -s είναι αμοιβαία αποκλειόμενες. δεν μπορούν να καθοριστούν και οι δύο. Όταν δεν καθορίζεται καμία από τις δύο, το lsof εμφανίζει την κατάλληλη και διαθέσιμη τιμή - μέγεθος ή offset - για τον τύπο του αρχείου.

-o o    καθορίζει τον αριθμό των δεκαδικών ψηφίων (o) που θα εκτυπωθούν μετά το ``0t'' για ένα offset αρχείου πριν η μορφή αλλάξει σε ``0x...''. Μια τιμή o μηδέν (απεριόριστη) υποδεικνύει στο lsof να χρησιμοποιήσει τη μορφή ``0t'' για όλη την έξοδο offset.

Αυτή η επιλογή ΔΕΝ εντολή στο lsof να εμφανίζει το offset ανά πάσα στιγμή. καθορίστε το -o (χωρίς αριθμό στο τέλος) για να το κάνετε αυτό. Το -o o καθορίζει μόνο τον αριθμό των ψηφίων μετά το ``0t'' στην έξοδο μεγέθους και offset ή μόνο στην έξοδο offset. Έτσι, για παράδειγμα, για να υποδείξετε στο lsof να εμφανίζει το offset ανά πάσα στιγμή με έναν αριθμό δεκαδικών ψηφίων 10, χρησιμοποιήστε:

-o -o 10
ή
-oo10

Ο προεπιλεγμένος αριθμός ψηφίων που επιτρέπονται μετά το ``0t'' είναι συνήθως 8, αλλά μπορεί να έχει αλλάξει από τον κατασκευαστή του lsof. Ανατρέξτε στην περιγραφή της επιλογής -o o στην έξοδο της επιλογής -h ή -? για να προσδιορίσετε την προεπιλογή που ισχύει.

-O  εντολή στο lsof να παρακάμψει τη στρατηγική που χρησιμοποιεί για να αποφύγει το μπλοκάρισμα από ορισμένες λειτουργίες πυρήνα - δηλαδή, εκτελώντας τις σε δημιουργημένες θυγατρικές διεργασίες. Δείτε τις ενότητες ΑΠΟΦΥΓΗ ΜΠΛΟΚΑΡΙΣΜΑΤΩΝ ΠΥΡΗΝΑ και ΜΠΛΟΚΑΡΙΣΜΑΤΑ ΚΑΙ ΧΡΟΝΟΙ ΕΚΤΕΛΕΣΗΣ για περισσότερες πληροφορίες σχετικά με τις λειτουργίες πυρήνα που ενδέχεται να μπλοκάρουν το lsof.

Ενώ η χρήση αυτής της επιλογής θα μειώσει την επιβάρυνση εκκίνησης του lsof, μπορεί επίσης να προκαλέσει το μπλοκάρισμα του lsof όταν ο πυρήνας δεν ανταποκρίνεται σε μια λειτουργία. Χρησιμοποιήστε αυτήν την επιλογή με προσοχή.

-p s    αποκλείει ή επιλέγει την καταχώρηση αρχείων για τις διεργασίες των οποίων οι προαιρετικοί αριθμοί αναγνώρισης διεργασίας (PID) βρίσκονται στο σύνολο s που διαχωρίζονται με κόμμα - π.χ. ``123'' ή ``123,^456''. (Δεν θα πρέπει να υπάρχουν κενά στο σύνολο.)

Οι αριθμοί PID που ξεκινούν με `^' (άρνηση) αντιπροσωπεύουν εξαιρέσεις.

Πολλαπλοί αριθμοί διαδικασιών (PID) συνδυάζονται σε ένα ενιαίο σύνολο OR πριν συμμετάσχουν στην επιλογή AND. Επιλογή. Ωστόσο, οι εξαιρέσεις PID εφαρμόζονται χωρίς OR ή AND και έχουν ισχύ πριν από την εφαρμογή άλλων κριτηρίων επιλογής.

-P       αποτρέπει τη μετατροπή των αριθμών θυρών σε ονόματα θυρών για αρχεία δικτύου (η αντιστοίχιση συνήθως αντλείται από το /etc/services). Η αποτροπή της μετατροπής μπορεί να κάνει το lsof να εκτελείται ελαφρώς πιο γρήγορα. Είναι επίσης χρήσιμο όταν η αναζήτηση ονομάτων θυρών δεν λειτουργεί σωστά.

-Q       αγνοεί τις αποτυχημένες αναζητήσεις. Όταν το lsof λαμβάνει εντολή να αναζητήσει χρήστες ενός αρχείου, ή χρήστες μιας συσκευής, ή για ένα συγκεκριμένο PID, ή για συγκεκριμένα πρωτόκολλα που χρησιμοποιούνται από αυτό το PID, το lsof θα επιστρέψει ένα σφάλμα εάν οποιαδήποτε από τα αποτελέσματα αναζήτησης είναι κενά. Η επιλογή -Q θα αλλάξει αυτήν τη συμπεριφορά, έτσι ώστε το lsof να επιστρέφει έναν κώδικα εξόδου επιτυχίας (0) ακόμη και αν οποιαδήποτε από τα αποτελέσματα αναζήτησης είναι κενά. Επιπλέον, οι ελλιπείς όροι αναζήτησης δεν θα αναφέρονται στο stderr.

+|-r [t[c<N>][m<fmt>]]
θέτει το lsof σε επαναλαμβανόμενη λειτουργία. Εκεί, το lsof καταγράφει τα ανοιχτά αρχεία όπως επιλέγονται από άλλες επιλογές, καθυστερεί για t δευτερόλεπτα (προεπιλογή δεκαπέντε) και στη συνέχεια επαναλαμβάνει την καταγραφή, καθυστερώντας και καταγράφοντας επανειλημμένα μέχρι να διακοπεί από μια συνθήκη που καθορίζεται από το πρόθεμα της επιλογής.

Εάν το πρόθεμα είναι ένα \`-\', η επαναλαμβανόμενη λειτουργία είναι άπειρη. Το Lsof πρέπει να τερματιστεί με ένα σήμα διακοπής ή τερματισμού. Το \`c<N>' είναι για τον καθορισμό των ορίων της επανάληψης. εάν ο αριθμός των επαναλήψεων φτάσει το `<N>', το Lsof σταματά μόνο του.

Εάν το πρόθεμα είναι `+\', η επαναλαμβανόμενη λειτουργία θα τελειώσει στον πρώτο κύκλο εάν δεν υπάρχουν καταγεγραμμένα ανοιχτά αρχεία και φυσικά όταν το lsof σταματήσει με ένα σήμα διακοπής ή τερματισμού. Όταν η επαναλαμβανόμενη λειτουργία τελειώνει επειδή δεν καταγράφηκαν αρχεία, ο κώδικας εξόδου της διαδικασίας θα είναι μηδέν εάν έχουν καταγραφεί ανοιχτά αρχεία. ένα, εάν δεν έχουν καταγραφεί ποτέ ανοιχτά αρχεία.

Το Lsof επισημαίνει το τέλος κάθε καταγραφής: εάν η έξοδος πεδίου βρίσκεται σε εξέλιξη (η επιλογή -F έχει καθοριστεί), η προεπιλεγμένη σήμανση είναι το `m\'. διαφορετικά η προεπιλεγμένη σήμανση είναι το ``========''. Η σήμανση ακολουθείται από έναν χαρακτήρα NL.

Η προαιρετική παράμετρος "m<fmt>" καθορίζει μια μορφή για τη γραμμή σήμανσης. Οι χαρακτήρες <fmt> που ακολουθούν το \`m' ερμηνεύονται ως μια προδιαγραφή μορφής για τη συνάρτηση strftime(3), όταν αυτή και η συνάρτηση localtime(3) είναι διαθέσιμες στη C βιβλιοθήκη της διαλέκτου. Ανατρέξτε στην τεκμηρίωση της strftime(3) για το τι μπορεί να εμφανιστεί στην προδιαγραφή μορφής της. Σημειώστε ότι όταν ζητείται έξοδος πεδίου με την επιλογή -F, το <fmt> δεν μπορεί να περιέχει το χαρακτήρα NL, το \`\`%n''. Σημειώστε επίσης ότι όταν το <fmt> περιέχει κενά ή άλλους χαρακτήρες που επηρεάζουν την ερμηνεία των ορισμάτων από το κέλυφος, το <fmt> πρέπει να περικλείεται κατάλληλα.

Η επαναλαμβανόμενη λειτουργία μειώνει την επιβάρυνση εκκίνησης του lsof, επομένως είναι πιο αποτελεσματικό να χρησιμοποιείται αυτή η λειτουργία από το να καλείται το lsof επανειλημμένα από ένα σενάριο κελύφους, για παράδειγμα.

Για να χρησιμοποιήσετε την επαναλαμβανόμενη λειτουργία με τον πιο αποτελεσματικό τρόπο, συνοδεύστε το +|-r με την προδιαγραφή άλλων επιλογών επιλογής lsof, έτσι ώστε η ποσότητα της πρόσβασης στη μνήμη πυρήνα που κάνει το lsof να διατηρείται στο ελάχιστο. Οι επιλογές που φιλτράρουν σε επίπεδο διαδικασίας - π.χ. -c, -g, -p, -u - είναι οι πιο αποτελεσματικές επιλογές.

Η λειτουργία επανάληψης είναι χρήσιμη όταν χρησιμοποιείται σε συνδυασμό με την έξοδο πεδίου (δείτε την περιγραφή της επιλογής -F) και ένα εποπτικό σενάριο awk ή Perl ή ένα πρόγραμμα C.

-R καθορίζει ότι το lsof θα εμφανίζει τον αριθμό ταυτοποίησης της διαδικασίας γονέα στην στήλη PPID.

-s [p:s] Η επιλογή s, όταν χρησιμοποιείται μόνη της, καθορίζει ότι το lsof θα εμφανίζει το μέγεθος του αρχείου ανά πάσα στιγμή. Αυτό αλλάζει την επικεφαλίδα της στήλης SIZE/OFF σε SIZE. Εάν το αρχείο δεν έχει μέγεθος, δεν θα εμφανιστεί τίποτα.

Η προαιρετική μορφή -s p:s είναι διαθέσιμη μόνο για επιλεγμένες διαλέκτους και μόνο όταν η έξοδος βοήθειας -h ή -? την αναφέρει.

Όταν η προαιρετική μορφή είναι διαθέσιμη, το s μπορεί να ακολουθείται από ένα όνομα πρωτοκόλλου (p), είτε TCP είτε UDP, ένα κόλον (':') και μια λίστα ονομάτων καταστάσεων πρωτοκόλλου, χωρισμένων με κόμμα, η οποία καθορίζει ότι τα ανοιχτά αρχεία TCP και UDP θα αποκλείονται εάν τα ονόματά τους περιλαμβάνονται στη λίστα (s) και προηγούνται με ένα `^`; ή θα περιλαμβάνονται εάν τα ονόματά τους δεν προηγούνται με ένα `^`.

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

Όταν ορίζεται μια λίστα συμπερίληψης, μόνο τα αρχεία δικτύου με ονόματα καταστάσεων στη λίστα θα εμφανίζονται στην έξοδο του lsof. Επομένως, η καθορισμένη ενός μόνο ονόματος κατάστασης σημαίνει ότι μόνο τα αρχεία δικτύου με αυτό το όνομα κατάστασης θα εμφανίζονται.

Η διάκριση μεταξύ πεζών και κεφαλαίων δεν έχει σημασία στα ονόματα πρωτοκόλλου ή καταστάσεων, αλλά δεν πρέπει να υπάρχουν κενά και το κόλον (':') που διαχωρίζει το όνομα πρωτοκόλλου (p) και τη λίστα ονομάτων καταστάσεων (s) είναι απαραίτητο.

Εάν πρέπει να εμφανίζονται μόνο τα αρχεία TCP και UDP, όπως ελέγχονται από τους καθορισμένους αποκλεισμούς και συμπεριλήψεις, θα πρέπει επίσης να καθοριστεί η επιλογή -i. Εάν πρέπει να εμφανίζονται μόνο τα αρχεία ενός μόνο πρωτοκόλλου, προσθέστε το όνομά του ως όρισμα στην επιλογή -i.

Για παράδειγμα, για να εμφανίσετε μόνο τα αρχεία δικτύου με κατάσταση TCP LISTEN, χρησιμοποιήστε:

-iTCP -sTCP:LISTEN

Ή, για παράδειγμα, για να εμφανίσετε αρχεία δικτύου με όλες τις καταστάσεις UDP εκτός από την κατάσταση Idle, χρησιμοποιήστε:

-iUDP -sUDP:^Idle

Τα ονόματα καταστάσεων ποικίλλουν ανάλογα με τις διαλέκτους UNIX, επομένως δεν είναι δυνατό να παρέχεται μια πλήρης λίστα. Ορισμένα κοινά ονόματα καταστάσεων TCP είναι: CLOSED, IDLE, BOUND, LISTEN, ESTABLISHED, SYN_SENT, SYN_RCDV, ESTABLISHED, CLOSE_WAIT, FIN_WAIT1, CLOSING, LAST_ACK, FIN_WAIT_2 και TIME_WAIT. Δύο κοινά ονόματα καταστάσεων UDP είναι Unbound και Idle.

Δείτε τις Συχνές Ερωτήσεις του lsof (Η ενότητα Συχνές Ερωτήσεις δίνει την τοποθεσία της) για περισσότερες πληροφορίες σχετικά με τον τρόπο χρήσης του αποκλεισμού και της συμπερίληψης καταστάσεων πρωτοκόλλου, συμπεριλαμβανομένων παραδειγμάτων.

Οι επιλογές -o (χωρίς έναν ακόλουθο αριθμό δεκαδικών ψηφίων) και -s (χωρίς μια ακόλουθη λίστα ονόματος πρωτοκόλλου και κατάστασης) είναι αμοιβαία αποκλειόμενες. δεν μπορούν να καθοριστούν και οι δύο. Όταν καμία δεν καθορίζεται, το lsof εμφανίζει την κατάλληλη και διαθέσιμη τιμή - μέγεθος ή μετατόπιση - για τον τύπο του αρχείου.

Επειδή ορισμένοι τύποι αρχείων δεν έχουν πραγματικό μέγεθος - υποδοχές, FIFOs, σωλήνες κ.λπ. - το lsof εμφανίζει για το μέγεθός τους τις ποσότητες περιεχομένου στις σχετικές αποθηκευτικές μνήμες πυρήνα, εάν είναι δυνατό.

-S [t]   καθορίζει μια προαιρετική τιμή χρονικού ορίου σε δευτερόλεπτα για τις λειτουργίες του πυρήνα - lstat(2), [readlink]({filename}../../readlink)(2) και [stat]({filename}../../stat)(2) - οι οποίες ενδέχεται να προκαλέσουν αδιέξοδο. Το ελάχιστο για το t είναι δύο· η προεπιλογή είναι δεκαπέντε· όταν δεν καθορίζεται καμία τιμή, χρησιμοποιείται η προεπιλογή.

Δείτε την ενότητα BLOCKS AND TIMEOUTS για περισσότερες πληροφορίες.

-T [t]   ελέγχει την αναφορά ορισμένων πληροφοριών TCP/TPI, οι οποίες αναφέρονται επίσης από το [netstat]({filename}../../netstat)(1), μετά τις δικτυακές διευθύνσεις. Στην κανονική έξοδο, οι πληροφορίες εμφανίζονται μέσα σε παρενθέσεις,
κάθε στοιχείο εκτός από την κατάσταση TCP ή TPI, αναγνωρίζεται από μια λέξη-κλειδί, ακολουθεί ένα '=' και διαχωρίζονται μεταξύ τους με ένα κενό:

<Κατάσταση TCP ή TPI>
QR=<μήκος ουράς ανάγνωσης>
QS=<μήκος ουράς αποστολής>
SO=<επιλογές και τιμές υποδοχής>
SS=<καταστάσεις υποδοχής>
TF=<σημαίες και τιμές TCP>
WR=<μήκος παραθύρου ανάγνωσης>
WW=<μήκος παραθύρου εγγραφής>

Δεν αναφέρονται όλες οι τιμές για όλες τις παραλλαγές UNIX. Τα στοιχεία τιμών (όταν είναι διαθέσιμα) αναφέρονται μετά από το όνομα του στοιχείου και το '='.

Όταν η λειτουργία εξόδου πεδίου είναι σε ισχύ (Δείτε την ΕΞΟΔΟΣ ΓΙΑ ΑΛΛΑ ΠΡΟΓΡΑΜΜΑΤΑ.), κάθε στοιχείο εμφανίζεται ως ένα πεδίο με έναν χαρακτήρα 'T' στην αρχή.

Το -T χωρίς ακόλουθους χαρακτήρες λέξεων-κλειδιών απενεργοποιεί την αναφορά πληροφοριών TCP/TPI.

Το -T με ακόλουθους χαρακτήρες επιλέγει την αναφορά συγκεκριμένων πληροφοριών TCP/TPI:

f    επιλέγει την αναφορά επιλογών υποδοχής,
καταστάσεων και τιμών και σημαίες TCP και
τιμές.
q    επιλέγει την αναφορά μήκους ουράς.
s    επιλέγει την αναφορά κατάστασης σύνδεσης.
w    επιλέγει την αναφορά μεγέθους παραθύρου.

Δεν έχουν ενεργοποιηθεί όλες οι επιλογές για ορισμένες παραλλαγές UNIX. Η κατάσταση μπορεί να επιλεγεί για όλες τις παραλλαγές και αναφέρεται από προεπιλογή. Η έξοδος βοήθειας -h ή -? για την επιλογή -T θα δείξει ποιες επιλογές μπορούν να χρησιμοποιηθούν με την παραλλαγή UNIX.

Όταν το -T χρησιμοποιείται για την επιλογή πληροφοριών - δηλαδή, ακολουθείται από ένα ή περισσότερα χαρακτήρες επιλογής - η εμφάνιση της κατάστασης απενεργοποιείται από προεπιλογή και πρέπει να επιλεγεί ρητά ξανά στους χαρακτήρες που ακολουθούν το -T. (Στην πράξη, επομένως, η προεπιλογή είναι ισοδύναμη με το -Ts.) Για παράδειγμα, εάν απαιτούνται μήκη ουράς και κατάσταση, χρησιμοποιήστε το -Tqs.

Οι επιλογές υποδοχής, οι καταστάσεις υποδοχής, ορισμένες τιμές υποδοχής, οι σημαίες TCP και μία τιμή TCP μπορούν να αναφερθούν (όταν είναι διαθέσιμες στην παραλλαγή UNIX) με τη μορφή των ονομάτων που συνήθως εμφανίζονται μετά τις SO_, so_, SS_, TCP_ και TF_ στα αρχεία κεφαλίδας της παραλλαγής - συνήθως , και . Ανατρέξτε σε αυτά τα αρχεία κεφαλίδας για να μάθετε τη σημασία των σημαιών, των επιλογών, των καταστάσεων και των τιμών.

Το ``SO='' προηγείται των επιλογών και των τιμών της υποδοχής· το ``SS='', των καταστάσεων της υποδοχής· και το ``TF='', των
σημαιών και των τιμών TCP.

Εάν μια σημαία ή μια επιλογή έχει μια τιμή, η τιμή θα ακολουθεί το '=' και το όνομα - π.χ., SO=LINGER=5'',SO=QLIM=5'', ``TF=MSS=512''. Οι ακόλουθες επτά τιμές ενδέχεται να αναφερθούν:

Όνομα Αναφέρεται Περιγραφή (Συνηθισμένο Σύμβολο)


KEEPALIVE χρόνος διατήρησης σύνδεσης (SO_KEEPALIVE)
LINGER χρόνος αναμονής (SO_LINGER)
MSS μέγιστο μέγεθος τμήματος (TCP_MAXSEG)
PQLEN μερικές συνδέσεις στην ουρά αναμονής
QLEN καθιερωμένες συνδέσεις στην ουρά αναμονής
QLIM όριο καθιερωμένων συνδέσεων στην ουρά αναμονής
RCVBUF μήκος ρυθμιστικού χώρου λήψης (SO_RCVBUF)
SNDBUF μήκος ρυθμιστικού χώρου αποστολής (SO_SNDBUF)

Λεπτομέρειες σχετικά με τις επιλογές και τις τιμές υποδοχών, τις καταστάσεις υποδοχών και τις σημαίες και τιμές TCP που ενδέχεται να εμφανίζονται για συγκεκριμένες παραλλαγές UNIX, μπορεί να βρεθούν στην απάντηση στις ερωτήσεις «Γιατί το lsof δεν αναφέρει τις επιλογές υποδοχών, τις καταστάσεις υποδοχών και τις σημαίες και τις τιμές TCP για την παραλλαγή μου;» και «Γιατί το lsof δεν αναφέρει τον αριθμό των μερικών συνδέσεων στην ουρά αναμονής για την παραλλαγή μου;» στην ενότητα FAQ του lsof (Η ενότητα FAQ δίνει την τοποθεσία της). Στο Linux, αυτή η επιλογή εκτυπώνει επίσης την κατάσταση των υποδοχών τομέα UNIX.

-t παράγει συνοπτική έξοδο, αποτελούμενη αποκλειστικά από αναγνωριστικά διεργασιών (χωρίς κεφαλίδα), ώστε να είναι εύκολο να χρησιμοποιηθεί προγραμματιστικά. π.χ.

# επαναφόρτωση οτιδήποτε χρησιμοποιεί παλιά SSL
lsof -t /lib/*/libssl.so.* | xargs -r kill -HUP

# λήψη λίστας διεργασιών και στη συνέχεια επανάληψη σε αυτές (μόνο Bash)
mapfile -t pids < <(
lsof -wt /var/log/your.log
)
for pid in "${pids[@]}" ; do
your_command -p "$pid"
done

Η επιλογή -t συνεπάγεται την επιλογή -w.

-u s επιλέγει την καταχώρηση αρχείων για τον χρήστη του οποίου τα ονόματα σύνδεσης ή οι αριθμοί αναγνωριστικού χρήστη περιέχονται στο σύνολο διαχωρισμένο με κόμμα s - π.χ. "abe" ή "548,root". (Δεν πρέπει να υπάρχουν κενά στο σύνολο).

Πολλαπλά ονόματα σύνδεσης ή αριθμοί αναγνωριστικού χρήστη συνδυάζονται σε ένα μόνο σύνολο OR πριν συμμετάσχουν στην επιλογή AND.

Εάν ένα όνομα σύνδεσης ή ένας αριθμός αναγνωριστικού χρήστη προηγείται με ένα σύμβολο `, γίνεται άρνηση - δηλαδή, τα αρχεία των διεργασιών που ανήκουν στο όνομα σύνδεσης ή στον αριθμό αναγνωριστικού χρήστη δεν θα καταχωρηθούν ποτέ. Μια επιλογή ονόματος σύνδεσης ή αναγνωριστικού χρήστη με άρνηση δεν συνδυάζεται ούτε συνδυάζεται με άλλες επιλογές. εφαρμόζεται πριν από όλες τις άλλες επιλογές και αποκλείει απόλυτα την καταχώρηση των αρχείων της διεργασίας. Για παράδειγμα, για να κατευθύνετε το lsof να αποκλείσει την καταχώρηση αρχείων που ανήκουν σε διεργασίες root, καθορίστε "-u^root" ή "-u^0".

-U επιλέγει την καταχώρηση αρχείων υποδοχών τομέα UNIX.

-v επιλέγει την καταχώρηση πληροφοριών έκδοσης lsof, συμπεριλαμβανομένων: αριθμού αναθεώρησης. πότε κατασκευάστηκε το δυαδικό αρχείο lsof. ποιος κατασκεύασε το δυαδικό αρχείο και πού. το όνομα του μεταγλωττιστή που χρησιμοποιήθηκε για την κατασκευή του δυαδικού αρχείου lsof. ο αριθμός έκδοσης του μεταγλωττιστή, όταν είναι διαθέσιμος. οι σημαίες μεταγλωττιστή και συνδέσμου που χρησιμοποιήθηκαν για την κατασκευή του δυαδικού αρχείου lsof και πληροφορίες συστήματος, συνήθως η έξοδος της επιλογής -a του uname.

-V κατευθύνει το lsof να υποδεικνύει τα στοιχεία που ζητήθηκαν να καταχωρηθούν και δεν κατάφερε να βρει - ονόματα εντολών, ονόματα αρχείων, διευθύνσεις ή αρχεία Διαδικτύου, ονόματα σύνδεσης, αρχεία NFS, PIDs, PGIDs και UIDs.

Όταν άλλες επιλογές συνδυάζονται με επιλογές αναζήτησης ή οι επιλογές χρόνου μεταγλώττισης περιορίζουν την καταχώρηση ορισμένων αρχείων, το lsof ενδέχεται να μην αναφέρει ότι απέτυχε να βρει ένα στοιχείο αναζήτησης όταν μια συνδυασμένη επιλογή ή μια επιλογή χρόνου μεταγλώττισης εμποδίζει την καταχώρηση του ανοικτού αρχείου που περιέχει το εντοπισμένο στοιχείο αναζήτησης.

Για παράδειγμα, η εντολή lsof -V -iTCP@foobar -a -d 999 ενδέχεται να μην αναφέρει την αποτυχία εντοπισμού ανοιχτών αρχείων στο TCP@foobar και ενδέχεται να μην εμφανίσει κανένα, εάν δεν υπάρχουν αρχεία με αριθμό περιγραφής αρχείου 99. Μια παρόμοια κατάσταση προκύπτει όταν οι μεταβλητές HASSECURITY και HASNOSOCKSECURITY ορίζονται κατά τη διάρκεια της μεταγλώττισης και αποτρέπουν την εμφάνιση των ανοιχτών αρχείων.

+|-w Ενεργοποιεί (+) ή απενεργοποιεί (-) την καταστολή των μηνυμάτων προειδοποίησης.

Ο κατασκευαστής του lsof μπορεί να επιλέξει να έχει τα μηνύματα προειδοποίησης απενεργοποιημένα ή ενεργοποιημένα από προεπιλογή. Η προεπιλεγμένη κατάσταση των μηνυμάτων προειδοποίησης υποδεικνύεται στην έξοδο των επιλογών -h ή -?. Η απενεργοποίηση των μηνυμάτων προειδοποίησης όταν είναι ήδη απενεργοποιημένα ή η ενεργοποίησή τους όταν είναι ήδη ενεργοποιημένα είναι αποδεκτή.

Η επιλογή -t συνεπάγεται την επιλογή -w.

-x [fl] μπορεί να συνοδεύει τις επιλογές +d και +D για να κατευθύνει την επεξεργασία τους ώστε να διασχίζει συμβολικούς συνδέσμους και/ή σημεία προσάρτησης συστημάτων αρχείων που συναντώνται κατά τη σάρωση του καταλόγου (+d) ή του δέντρου καταλόγων (+D).

Εάν η επιλογή -x καθοριστεί από μόνη της χωρίς επόμενη παράμετρο, η διασχιστική επεξεργασία τόσο των συμβολικών συνδέσμων όσο και των σημείων προσάρτησης συστημάτων αρχείων ενεργοποιείται. Σημειώστε ότι όταν η επιλογή -x καθοριστεί χωρίς παράμετρο, το επόμενο όρισμα πρέπει να ξεκινά με '-' ή '+'.

Η προαιρετική παράμετρος 'f' ενεργοποιεί τη διασχιστική επεξεργασία των σημείων προσάρτησης συστημάτων αρχείων· η παράμετρος 'l', την διασχιστική επεξεργασία των συμβολικών συνδέσμων.

Η επιλογή -x δεν μπορεί να χρησιμοποιηθεί χωρίς να χρησιμοποιηθεί και η επιλογή +d ή +D.

-X Αυτή είναι μια επιλογή ειδική για μια συγκεκριμένη διάλεκτο.

AIX:

Αυτή η επιλογή του IBM AIX RISC/System 6000 ζητά την αναφορά των εκτελεσμένων αρχείων κειμένου και των κοινόχρηστων βιβλιοθηκών.

ΠΡΟΕΙΔΟΠΟΙΗΣΗ: επειδή αυτή η επιλογή χρησιμοποιεί τη συνάρτηση kernel readx(), η χρήση της σε ένα πολυσύχναστο σύστημα AIX ενδέχεται να προκαλέσει την πλήρη ακινητοποίηση μιας εφαρμογής, έτσι ώστε να μην μπορεί ούτε να τερματιστεί ούτε να σταματήσει. Δεν έχω δει ποτέ να συμβαίνει αυτό ή να έχω λάβει κάποια αναφορά για αυτό, αλλά νομίζω ότι υπάρχει μια μικρή πιθανότητα να συμβεί.

Από προεπιλογή, η χρήση του readx() είναι απενεργοποιημένη. Στο AIX 5L και νεότερες εκδόσεις, το lsof ενδέχεται να χρειάζεται άδεια setuid-root για να εκτελέσει τις ενέργειες που απαιτεί αυτή η επιλογή.

Ο κατασκευαστής του lsof μπορεί να καθορίσει ότι η επιλογή -X θα περιορίζεται σε διεργασίες των οποίων το πραγματικό UID είναι root. Εάν αυτό έχει γίνει, η επιλογή -X δεν θα εμφανίζεται στην έξοδο των επιλογών -h ή -? εκτός εάν το πραγματικό UID της διεργασίας lsof είναι root. Η προεπιλεγμένη διανομή του lsof επιτρέπει σε οποιοδήποτε UID να καθορίσει την επιλογή -X, επομένως, από προεπιλογή, θα εμφανίζεται στην έξοδο βοήθειας.

Όταν η χρήση του AIX readx() είναι απενεργοποιημένη, το lsof ενδέχεται να μην είναι σε θέση να αναφέρει πληροφορίες για όλες τις αναφορές αρχείων κειμένου και φορτωτή, αλλά ενδέχεται επίσης να αποφύγει την επιδείνωση ενός σφάλματος αναζήτησης καταλόγου του kernel AIX, γνωστού ως το σφάλμα Stale Segment ID.

Η συνάρτηση readx(), που χρησιμοποιείται από το lsof ή οποιοδήποτε άλλο πρόγραμμα για την πρόσβαση σε ορισμένα τμήματα της εικονικής μνήμης του kernel, μπορεί να προκαλέσει το σφάλμα Stale Segment ID. Μπορεί να προκαλέσει την εσφαλμένη πεποίθηση της συνάρτησης dir_search() του kernel ότι ένα μέρος μιας αντιγραφής ενός συστήματος αρχείων που βρίσκεται στη μνήμη έχει μηδενιστεί. Μια άλλη διεργασία εφαρμογής, διαφορετική από το lsof, που ζητά από τον kernel να αναζητήσει τον κατάλογο - π.χ. χρησιμοποιώντας την open(2) - μπορεί να προκαλέσει την ατέρμονη επανάληψη της συνάρτησης dir_search(), γεγονός που θα ακινητοποιήσει την εφαρμογή.


Ανατρέξτε στις Συχνές Ερωτήσεις (FAQ) του lsof (Η ενότητα FAQ δίνει την τοποθεσία της) και στο αρχείο 00README της διανομής του lsof για μια πιο πλήρη περιγραφή του σφάλματος Stale Segment ID, του APAR του και των μεθόδων για τον καθορισμό της χρήσης του readx() κατά τη μεταγλώττιση του lsof.

Linux: Αυτή η επιλογή Linux ζητά από το lsof να παραλείψει την αναφορά πληροφοριών για όλα τα ανοιχτά αρχεία TCP, UDP και UDPLITE IPv4 και IPv6.

Αυτή η επιλογή Linux είναι πιο χρήσιμη όταν το σύστημα διαθέτει έναν εξαιρετικά μεγάλο αριθμό ανοιχτών αρχείων TCP, UDP και UDPLITE, η επεξεργασία των οποίων στα αρχεία /proc/net/tcp* και /proc/net/udp* θα απαιτούσε πολύ χρόνο για το lsof και η αναφορά των οποίων δεν είναι χρήσιμη.

Χρησιμοποιήστε αυτήν την επιλογή με προσοχή και μόνο όταν είστε σίγουροι ότι οι πληροφορίες που θέλετε να εμφανίσει το lsof δεν σχετίζονται με ανοιχτά αρχεία socket TCP, UDP ή UDPLITE.

Solaris 10 και νεότερες εκδόσεις: Αυτή η επιλογή Solaris 10 και νεότερων εκδόσεων ζητά την αναφορά των προσωρινά αποθηκευμένων διαδρομών για αρχεία που έχουν διαγραφεί - δηλαδή, έχουν αφαιρεθεί με rm(1) ή unlink(2).

Η προσωρινά αποθηκευμένη διαδρομή ακολουθείται από τη συμβολοσειρά " (διαγραμμένο)" για να υποδείξει ότι η διαδρομή με την οποία ανοίχτηκε το αρχείο έχει διαγραφεί.

Επειδή οι ενδιάμεσες αλλαγές που έγιναν στη διαδρομή - δηλαδή, οι μετονομασίες με mv(1) ή rename(2) - δεν καταγράφονται στην προσωρινά αποθηκευμένη διαδρομή, αυτό που αναφέρει το lsof είναι μόνο η διαδρομή με την οποία ανοίχτηκε το αρχείο, και όχι η πιθανώς διαφορετική τελική διαδρομή.

-z [z] καθορίζει τον τρόπο με τον οποίο θα αντιμετωπιστούν οι πληροφορίες ζώνης Solaris 10 και νεότερων εκδόσεων.

Χωρίς επόμενο όρισμα - π.χ., NO z - η επιλογή καθορίζει ότι τα ονόματα ζωνών θα εμφανίζονται στην στήλη ΕΞΑΓΩΓΗ ΖΩΝΗΣ.

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

-Z [Z] καθορίζει τον τρόπο με τον οποίο θα αντιμετωπιστούν τα περιβάλλοντα ασφαλείας SELinux. Η υποστήριξη για αυτό και τον χαρακτήρα εξόδου πεδίου 'Z' καταργείται όταν το SELinux είναι απενεργοποιημένο στον τρέχοντα πυρήνα Linux.

Χωρίς επόμενο όρισμα - π.χ., NO Z - η επιλογή καθορίζει ότι τα περιβάλλοντα ασφαλείας θα εμφανίζονται στην στήλη ΠΕΡΙΒΑΛΛΟΝ ΑΣΦΑΛΕΙΑΣ.

Η επιλογή -Z μπορεί να ακολουθηθεί από ένα όνομα περιβάλλοντος ασφαλείας με χαρακτήρα κράτησης, Z. Αυτό προκαλεί την εμφάνιση μόνο των ανοιχτών αρχείων για τις διαδικασίες σε αυτό το περιβάλλον ασφαλείας. Μπορούν να καθοριστούν πολλαπλά ζεύγη επιλογών -Z Z και ορισμάτων για να σχηματιστεί μια λίστα με περιβάλλοντα ασφαλείας. Οποιοδήποτε ανοιχτό αρχείο οποιασδήποτε διαδικασίας σε οποιοδήποτε από τα περιβάλλοντα ασφαλείας θα εμφανιστεί, υπό την επιφύλαξη άλλων συνθηκών που καθορίζονται από άλλες επιλογές και ορίσματα. Σημειώστε ότι το Z μπορεί να είναι A:B:C ή *:B:C ή A:B:* ή *:*:C για να ταιριάζει με το περιβάλλον A:B:C.


--  Η επιλογή με το διπλό σύμβολο μείον είναι ένας δείκτης που σηματοδοτεί το τέλος των επιλογών με κλειδιά.
Μπορεί να χρησιμοποιηθεί, για παράδειγμα, όταν το πρώτο όνομα αρχείου ξεκινά με ένα σύμβολο μείον. Μπορεί
επίσης να χρησιμοποιηθεί όταν η απουσία μιας τιμής για την τελευταία επιλογή με κλειδί πρέπει να υποδεικνύεται από
την παρουσία ενός συμβόλου μείον στην επόμενη επιλογή και πριν από την έναρξη των ονομάτων αρχείων.

names   Αυτά είναι οι διαδρομές συγκεκριμένων αρχείων προς καταγραφή. Οι συμβολικοί σύνδεσμοι επιλύονται πριν από τη χρήση.
Το πρώτο όνομα μπορεί να διαχωρίζεται από τις προηγούμενες επιλογές με την επιλογή \`\`--''.

Εάν ένα όνομα είναι ο κατάλογος στο οποίο είναι συνδεδεμένο ένα σύστημα αρχείων ή η συσκευή του συστήματος αρχείων,
το lsof θα καταγράψει όλα τα αρχεία που είναι ανοιχτά στο σύστημα αρχείων. Για να θεωρηθεί ένα όνομα ως σύστημα αρχείων,
το όνομα πρέπει να ταιριάζει με ένα όνομα καταλόγου στο οποίο είναι συνδεδεμένο στην έξοδο [mount]({filename}../../mount)(8) ή να ταιριάζει με το όνομα μιας συσκευής μπλοκ που σχετίζεται με ένα όνομα καταλόγου στο οποίο είναι συνδεδεμένο. Η επιλογή +|-f μπορεί να χρησιμοποιηθεί
για να αναγκάσει το lsof να θεωρήσει ένα όνομα ως αναγνωριστικό συστήματος αρχείων (+f) ή ως απλό αρχείο (-f).

Εάν ένα όνομα είναι μια διαδρομή προς έναν κατάλογο που δεν είναι το όνομα καταλόγου στο οποίο είναι συνδεδεμένο ένα σύστημα αρχείων,
αντιμετωπίζεται ακριβώς όπως ένα κανονικό αρχείο - δηλαδή, η καταγραφή του περιορίζεται στις διεργασίες που το έχουν ανοιχτό ως αρχείο ή ως κατάλογο που είναι συγκεκριμένος για τη διεργασία,
όπως ο ριζικός ή ο τρέχων κατάλογος εργασίας. Για να ζητήσετε από το lsof να αναζητήσει ανοιχτά αρχεία μέσα σε ένα όνομα καταλόγου, χρησιμοποιήστε τις επιλογές +d s και +D D.

Εάν ένα όνομα είναι το βασικό όνομα μιας οικογένειας αρχείων πολλαπλών χρήσεων - π.χ., των /dev/pt[cs] του AIX, το lsof θα καταγράψει όλα τα σχετικά αρχεία πολλαπλών χρήσεων στη συσκευή που είναι ανοιχτά - π.χ.,
/dev/pt[cs]/1, /dev/pt[cs]/2, κ.λπ.

Εάν ένα όνομα είναι ένα όνομα UNIX domain socket, το lsof συνήθως θα το αναζητήσει βάσει των χαρακτήρων του ονόματος - ακριβώς όπως καθορίζεται και καταγράφεται στη δομή socket του πυρήνα. (Δείτε την επόμενη παράγραφο για μια εξαίρεση σε αυτόν τον κανόνα για το Linux). Η καθορισμένη μιας σχετικής διαδρομής - π.χ., ./file - αντί για την απόλυτη διαδρομή του αρχείου - π.χ., /tmp/file - δεν θα λειτουργήσει επειδή το lsof πρέπει να αντιστοιχίσει τους χαρακτήρες που καθορίζετε με αυτό που βρίσκει στις δομές UNIX domain socket του πυρήνα.

Εάν ένα όνομα είναι ένα όνομα UNIX domain socket του Linux, σε μία περίπτωση το lsof μπορεί να το αναζητήσει
με βάση τον αριθμό συσκευής και τον αριθμό i-node, επιτρέποντας στο όνομα να είναι μια σχετική διαδρομή. Η περίπτωση αυτή απαιτεί
ότι η απόλυτη διαδρομή - δηλαδή, μία που ξεκινά με μια κάθετο (\) - χρησιμοποιείται από τη διεργασία
που δημιούργησε το socket, και επομένως να αποθηκεύεται στο αρχείο /proc/net/unix και απαιτεί
ότι το lsof μπορεί να αποκτήσει τους αριθμούς συσκευής και κόμβου τόσο της απόλυτης διαδρομής στο
/proc/net/unix όσο και του ονόματος μέσω επιτυχημένων κλήσεων συστήματος [stat]({filename}../../stat)(2). Όταν πληρούνται αυτές οι προϋποθέσεις,
το lsof θα μπορεί να αναζητήσει το UNIX domain socket όταν καθορίζεται κάποια διαδρομή προς αυτό στο όνομα. Έτσι, για παράδειγμα, εάν η διαδρομή είναι /dev/log και μια αναζήτηση lsof ξεκινά όταν ο τρέχων κατάλογος είναι /dev, τότε το όνομα μπορεί να είναι ./log.

Εάν ένα όνομα δεν είναι κανένα από τα παραπάνω, το lsof θα καταγράψει όλα τα ανοιχτά αρχεία των οποίων η συσκευή και ο i-κόμβος ταιριάζουν με αυτό του καθορισμένου ονόματος διαδρομής.

Εάν έχετε επίσης καθορίσει την επιλογή -b, τα μόνα ονόματα που μπορείτε να καθορίσετε με ασφάλεια είναι τα συστήματα αρχείων για τα οποία ο πίνακας συνδέσεων σας παρέχει εναλλακτικούς αριθμούς συσκευών. Δείτε τις ενότητες ΑΠΟΦΥΓΗΤΕ ΤΑ ΑΠΟΚΛΕΙΣΜΑΤΑ ΚΕΡΝΕΛ και ΕΝΑΛΛΑΚΤΙΚΟΙ ΑΡΙΘΜΟΙ ΣΥΣΚΕΥΩΝ για περισσότερες πληροφορίες.

Πολλαπλά ονόματα αρχείων συνδυάζονται σε ένα ενιαίο σύνολο ΟΡ πριν συμμετάσχουν στην επιλογή με την επιλογή AND.

AFS

Το Lsof υποστηρίζει την αναγνώριση αρχείων AFS για αυτές τις διαλέκτους (και εκδόσεις AFS):

AIX 4.1.4 (AFS 3.4a)
HP-UX 9.0.5 (AFS 3.4a)
Linux 1.2.13 (AFS 3.3)
Solaris 2.[56] (AFS 3.4a)

Μπορεί να αναγνωρίζει αρχεία AFS σε άλλες εκδόσεις αυτών των διαλέκτων, αλλά δεν έχει δοκιμαστεί εκεί. Ανάλογα με τον τρόπο υλοποίησης του AFS, το lsof μπορεί να αναγνωρίζει αρχεία AFS σε άλλες διαλέκτους ή μπορεί να έχει δυσκολίες στην αναγνώριση αρχείων AFS στις υποστηριζόμενες διαλέκτους.

Το Lsof μπορεί να δυσκολευτεί να προσδιορίσει όλες τις πτυχές των αρχείων AFS στις υποστηριζόμενες διαλέκτους όταν η υποστήριξη πυρήνα AFS υλοποιείται μέσω δυναμικών μονάδων των οποίων οι διευθύνσεις δεν εμφανίζονται στη λίστα ονομάτων μεταβλητών του πυρήνα. Σε αυτήν την περίπτωση, το lsof ενδέχεται να χρειαστεί να μαντέψει την ταυτότητα των αρχείων AFS και ενδέχεται να μην είναι σε θέση να λάβει πληροφορίες έντασης από τον πυρήνα που απαιτούνται για τον υπολογισμό των αριθμών κόμβων έντασης AFS. Όταν το lsof δεν μπορεί να υπολογίσει τους αριθμούς κόμβων έντασης, αναφέρει κενό στην στήλη NODE.

Η επιλογή -A A είναι διαθέσιμη σε ορισμένες υλοποιήσεις διαλέκτων του lsof για τον καθορισμό του αρχείου λίστας ονομάτων όπου μπορούν να βρεθούν οι διευθύνσεις του πυρήνα της δυναμικής μονάδας. Όταν αυτή η επιλογή είναι διαθέσιμη, θα εμφανίζεται στην έξοδο βοήθειας του lsof, η οποία παρουσιάζεται ως απάντηση στις επιλογές -h ή -?.

Δείτε τις Συχνές Ερωτήσεις του lsof (Η ενότητα Συχνές Ερωτήσεις δίνει την τοποθεσία της) για περισσότερες πληροφορίες σχετικά με τις δυναμικές μονάδες, τα σύμβολά τους και τον τρόπο με τον οποίο επηρεάζουν τις επιλογές lsof.

Επειδή οι αναζητήσεις διαδρομής AFS δεν φαίνεται να συμμετέχουν στις λειτουργίες προσωρινής αποθήκευσης ονομάτων του πυρήνα, το lsof δεν μπορεί να προσδιορίσει τα στοιχεία ονόματος διαδρομής για αρχεία AFS.

ΑΣΦΑΛΕΙΑ

Το Lsof έχει τρία χαρακτηριστικά που ενδέχεται να προκαλέσουν ανησυχίες ασφάλειας. Πρώτον, η προεπιλεγμένη λειτουργία μεταγλώττισης επιτρέπει σε οποιονδήποτε να καταγράφει όλα τα ανοιχτά αρχεία με αυτό. Δεύτερον, από προεπιλογή, δημιουργεί ένα αρχείο προσωρινής αποθήκευσης συσκευών που είναι αναγνώσιμο και εγγράψιμο από τον χρήστη, στην αρχική καταχώρηση του πραγματικού αναγνωριστικού χρήστη που εκτελεί το lsof. (Τα χαρακτηριστικά καταγραφής όλων των ανοιχτών αρχείων και της προσωρινής αποθήκευσης συσκευών ενδέχεται να απενεργοποιηθούν κατά τη μεταγλώττιση του lsof). Τρίτον, οι επιλογές -k και -m του ονομάζουν εναλλακτικές λίστες ονομάτων πυρήνα ή αρχεία μνήμης.

Ο περιορισμός της καταγραφής όλων των ανοιχτών αρχείων ελέγχεται από τις επιλογές χρόνου μεταγλώττισης HASSECURITY και HASNOSOCKSECURITY. Όταν ορίζεται το HASSECURITY, το lsof θα επιτρέπει μόνο στον χρήστη root να καταγράφει όλα τα ανοιχτά αρχεία. Ο μη χρήστης root μπορεί να καταγράφει μόνο ανοιχτά αρχεία διαδικασιών με τον ίδιο αριθμό αναγνωριστικού χρήστη με τον πραγματικό αριθμό αναγνωριστικού χρήστη της διαδικασίας lsof (αυτή στην οποία συνδέθηκε ο χρήστης).


Ωστόσο, εάν ορίσετε και τις δύο μεταβλητές HASSECURITY και HASNOSOCKSECURITY, οποιοσδήποτε μπορεί να καταγράψει τις ανοιχτές συνδέσεις δικτύου, εφόσον επιλεγούν με την επιλογή -i.

Όταν η HASSECURITY δεν είναι ορισμένη, οποιοσδήποτε μπορεί να καταγράψει όλες τις ανοιχτές συνδέσεις.

Η έξοδος βοήθειας, που εμφανίζεται ως απάντηση στην επιλογή -h ή -?, παρέχει την κατάσταση των ορισμών HASSECURITY και HASNOSOCKSECURITY.

Δείτε την ενότητα "Ασφάλεια" του αρχείου 00README της διανομής του lsof για πληροφορίες σχετικά με τον τρόπο δημιουργίας του lsof με τις επιλογές HASSECURITY και HASNOSOCKSECURITY ενεργοποιημένες.

Η δημιουργία και η χρήση ενός αρχείου προσωρινής μνήμης συσκευών, αναγνώσιμου και εγγράψιμου από τον χρήστη, ελέγχεται από την μεταβλητή HASDCACHE κατά τη διάρκεια της μεταγλώττισης. Δείτε την ενότητα "ΑΡΧΕΙΟ ΠΡΟΣΩΡΙΝΗΣ ΜΝΗΜΗΣ ΣΥΣΚΕΥΗΣ" και τις ακόλουθες ενότητες για λεπτομέρειες σχετικά με τον τρόπο δημιουργίας της διαδρομής του. Για λόγους ασφαλείας, είναι σημαντικό να σημειωθεί ότι στην προεπιλεγμένη διανομή του lsof, εάν το πραγματικό αναγνωριστικό χρήστη υπό το οποίο εκτελείται το lsof είναι το root, το αρχείο προσωρινής μνήμης συσκευών θα γραφτεί στον κατάλογο του root - π.χ., / ή /root. Όταν η HASDCACHE δεν είναι ορισμένη, το lsof δεν γράφει ή δεν επιχειρεί να διαβάσει ένα αρχείο προσωρινής μνήμης συσκευών.

Όταν η HASDCACHE είναι ορισμένη, η έξοδος βοήθειας του lsof, που εμφανίζεται ως απάντηση στις επιλογές -h, -D? ή -?, θα παρέχει πληροφορίες σχετικά με τη διαχείριση του αρχείου προσωρινής μνήμης συσκευών. Όταν η HASDCACHE δεν είναι ορισμένη, η έξοδος των επιλογών -h ή -? δεν θα περιέχει περιγραφή της επιλογής -D.

Πριν αποφασίσετε να απενεργοποιήσετε τη λειτουργία του αρχείου προσωρινής μνήμης συσκευών - η ενεργοποίησή της βελτιώνει την απόδοση του lsof μειώνοντας την επιβάρυνση εκκίνησης που προκαλείται από την εξέταση όλων των κόμβων στο /dev/devices) - διαβάστε τη συζήτηση σχετικά με αυτό στο αρχείο 00DCACHE της διανομής του lsof και στις Συχνές Ερωτήσεις του lsof (Η ενότητα των Συχνών Ερωτήσεων παρέχει τη θέση του).

ΟΤΑΝ ΔΕΝ ΕΙΣΤΕ ΣΙΓΟΥΡΟΙ, ΜΠΟΡΕΙΤΕ ΝΑ ΑΠΕΝΕΡΓΟΠΟΙΗΣΕΤΕ ΠΡΟΫΠΟΘΕΤΙΚΑ ΤΗ ΧΡΗΣΗ ΤΟΥ ΑΡΧΕΙΟΥ ΠΡΟΣΩΡΙΝΗΣ ΜΝΗΜΗΣ ΣΥΣΚΕΥΗΣ ΜΕ ΤΗΝ ΕΠΙΛΟΓΗ `-Di`.

Όταν ο χρήστης του lsof δηλώνει μια εναλλακτική λίστα ονομάτων πυρήνα ή αρχεία μνήμης με τις επιλογές -k και -m, το lsof ελέγχει την εξουσία του χρήστη να τα διαβάσει με τη συνάρτηση access(2). Αυτό προορίζεται να αποτρέψει το γεγονός ότι οποιαδήποτε ειδική εξουσία μπορεί να έχουν οι λειτουργίες του lsof, επιτρέποντάς του να διαβάζει αρχεία που δεν είναι κανονικά προσβάσιμα μέσω της εξουσίας του πραγματικού αναγνωριστικού χρήστη.

ΕΞΟΔΟΣ

Αυτή η ενότητα περιγράφει τις πληροφορίες που καταγράφει το lsof για κάθε ανοιχτή σύνδεση. Δείτε την ενότητα "ΕΞΟΔΟΣ ΓΙΑ ΑΛΛΑ ΠΡΟΓΡΑΜΜΑΤΑ" για πρόσθετες πληροφορίες σχετικά με την έξοδο που μπορεί να υποβληθεί σε επεξεργασία από ένα άλλο πρόγραμμα.

Το lsof εξάγει μόνο εκτυπώσιμους χαρακτήρες 8 bit (που δηλώνουν ότι είναι εκτυπώσιμοι από τη συνάρτηση `isprint(3)`). Οι μη εκτυπώσιμοι χαρακτήρες εκτυπώνονται σε μία από τις τρεις μορφές: τη μορφή C `\``\[bfrnt]``; τη μορφή ελέγχου χαρακτήρων `^` (π.χ., ``^@''); ή τη δεκαεξαδική μορφή που ξεκινά με `\x` (π.χ., ``\xab''). Το κενό είναι μη εκτυπώσιμο στη στήλη COMMAND (`\x20`) και εκτυπώσιμο αλλού.

Για ορισμένες διαλέκτους - εάν η HASSETLOCALE είναι ορισμένη στο αρχείο κεφαλίδας machine.h της διαλέκτου - το lsof θα εκτυπώσει τους εκτεταμένους χαρακτήρες 8 bit μιας γλώσσας. Η διαδικασία του lsof πρέπει να της παρέχεται μια μεταβλητή περιβάλλοντος γλώσσας (π.χ., LANG) της οποίας η τιμή αντιπροσωπεύει μια γνωστή γλώσσα στην οποία οι εκτεταμένοι χαρακτήρες θεωρούνται εκτυπώσιμοι από τη συνάρτηση isprint(3). Διαφορετικά, το lsof θεωρεί τους εκτεταμένους χαρακτήρες μη εκτυπώσιμους και τους εκτυπώνει σύμφωνα με τους κανόνες του για τους μη εκτυπώσιμους χαρακτήρες, όπως αναφέρθηκαν παραπάνω. Ανατρέξτε στη σελίδα του εγχειριδίου setlocale(3) της διαλέκτου σας για τα ονόματα άλλων μεταβλητών περιβάλλοντος που μπορούν να χρησιμοποιηθούν στη θέση της LANG - π.χ., LC_ALL, LC_CTYPE, κ.λπ.

Η υποστήριξη γλωσσικών ρυθμίσεων της Lsof για μια συγκεκριμένη διάλεκτο καλύπτει επίσης τους χαρακτήρες μεγάλης κλίμακας - π.χ. UTF-8 - όταν οι μεταβλητές HASSETLOCALE και HASWIDECHAR ορίζονται στο αρχείο κεφαλίδας machine.h της συγκεκριμένης διάλεκτου, και όταν έχει οριστεί μια κατάλληλη γλωσσική ρύθμιση στην κατάλληλη μεταβλητή περιβάλλοντος για τη διαδικασία lsof. Οι χαρακτήρες μεγάλης κλίμακας είναι εκτυπώσιμοι υπό αυτές τις συνθήκες, εάν η συνάρτηση iswprint(3) τους αναφέρει ως εκτυπώσιμους.

Εάν δεν έχουν οριστεί οι μεταβλητές HASSETLOCALE, HASWIDECHAR και μια κατάλληλη γλωσσική ρύθμιση, ή εάν η συνάρτηση iswprint(3) αναφέρει χαρακτήρες μεγάλης κλίμακας που δεν είναι εκτυπώσιμοι, η Lsof θεωρεί τους χαρακτήρες μεγάλης κλίμακας ως μη εκτυπώσιμους και εκτυπώνει κάθε ένα από τα 8 bit τους σύμφωνα με τους κανόνες της για μη εκτυπώσιμους χαρακτήρες, όπως αναφέρεται παραπάνω.

Ανατρέξτε στις απαντήσεις στις ερωτήσεις σχετικά με την "Υποστήριξη γλωσσικών ρυθμίσεων" στις Συχνές Ερωτήσεις της Lsof (Η ενότητα Συχνές Ερωτήσεις δίνει την τοποθεσία της) για περισσότερες πληροφορίες.

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

COMMAND περιέχει τους πρώτους εννέα χαρακτήρες του ονόματος της εντολής UNIX που σχετίζεται με τη διαδικασία. Εάν έχει καθοριστεί μια μη μηδενική τιμή w στην επιλογή +c w, η στήλη περιέχει τους πρώτους w χαρακτήρες του ονόματος της εντολής UNIX που σχετίζεται με τη διαδικασία, έως το όριο των χαρακτήρων που παρέχονται στην Lsof από τη διάλεκτο UNIX. (Δείτε την περιγραφή της εντολής +c w ή τις Συχνές Ερωτήσεις της Lsof για περισσότερες πληροφορίες. Η ενότητα Συχνών Ερωτήσεων δίνει την τοποθεσία της).

Εάν η τιμή w είναι μικρότερη από το μήκος του τίτλου της στήλης, "COMMAND", θα αυξηθεί σε αυτό το μήκος.

Εάν έχει καθοριστεί μια τιμή μηδέν w στην επιλογή +c w, η στήλη περιέχει όλους τους χαρακτήρες του ονόματος της εντολής UNIX που σχετίζεται με τη διαδικασία.

Όλοι οι χαρακτήρες του ονόματος της εντολής που διατηρούνται από τον πυρήνα στις δομές του εμφανίζονται στην έξοδο πεδίου όταν καθορίζεται ο περιγραφέας ονόματος εντολής (c). Δείτε την ενότητα ΕΞΟΔΟΣ ΓΙΑ ΑΛΛΕΣ ΕΝΤΟΛΕΣ για πληροφορίες σχετικά με την επιλογή της εξόδου πεδίου και του σχετικού περιγραφέα ονόματος εντολής.

PID είναι ο αριθμός αναγνώρισης διαδικασίας (Process IDentification) της διαδικασίας.

TID είναι ο αριθμός αναγνώρισης εργασίας (task IDentification), εάν η υποστήριξη αναφοράς εργασιών (task) υποστηρίζεται από τη διάλεκτο και αναφέρεται μια εργασία (task). (Εάν η έξοδος βοήθειας - δηλαδή, η έξοδος των επιλογών -h ή -? - εμφανίζει αυτήν την επιλογή, τότε η υποστήριξη αναφοράς εργασιών (task) υποστηρίζεται από τη διάλεκτο).

Μια κενή στήλη TID στην Linux υποδεικνύει μια διαδικασία - δηλαδή, μια μη εργασία (non-task).


Το TASKCMD είναι το όνομα της εντολής εργασίας. Γενικά, αυτό θα είναι το ίδιο με τη διαδικασία που αναφέρεται στη στήλη COMMAND, αλλά ορισμένες υλοποιήσεις εργασιών (π.χ., Linux) επιτρέπουν σε μια εργασία να αλλάξει το όνομα της εντολής της.

Το πλάτος της στήλης TASKCMD υπόκειται στον ίδιο περιορισμό μεγέθους με τη στήλη COMMAND.

ZONE είναι το όνομα ζώνης του Solaris 10 και νεότερων εκδόσεων. Αυτή η στήλη πρέπει να επιλεγεί με την επιλογή -z.

SECURITY-CONTEXT είναι το πλαίσιο ασφαλείας SELinux. Αυτή η στήλη πρέπει να επιλεγεί με την επιλογή -Z. Σημειώστε ότι η επιλογή -Z είναι απενεργοποιημένη όταν το SELinux είναι απενεργοποιημένο στον τρέχοντα πυρήνα Linux.

PPID είναι ο αριθμός ταυτοποίησης της μητρικής διεργασίας της διεργασίας. Εμφανίζεται μόνο όταν έχει καθοριστεί η επιλογή -R.

PGID είναι ο αριθμός ταυτοποίησης της ομάδας διεργασιών που σχετίζεται με τη διεργασία. Εμφανίζεται μόνο όταν έχει καθοριστεί η επιλογή -g.

USER είναι ο αριθμός ταυτότητας χρήστη ή το όνομα σύνδεσης του χρήστη στον οποίο ανήκει η διεργασία, συνήθως το ίδιο με αυτό που αναφέρεται από το [ps]({filename}../../ps)(1). Ωστόσο, στο Linux, το USER είναι ο αριθμός ταυτότητας χρήστη ή το όνομα σύνδεσης που κατέχει τον κατάλογο στο /proc όπου το lsof βρίσκει πληροφορίες σχετικά με τη διεργασία. Συνήθως, αυτή είναι η ίδια τιμή που αναφέρεται από το [ps]({filename}../../ps)(1), αλλά μπορεί να διαφέρει όταν η διεργασία έχει αλλάξει την αποτελεσματική ταυτότητα χρήστη της. (Δείτε την περιγραφή της επιλογής -l για πληροφορίες σχετικά με το πότε εμφανίζεται ένας αριθμός ταυτότητας χρήστη ή ένα όνομα σύνδεσης).

FD είναι ο αριθμός περιγραφής αρχείου του αρχείου ή:

cwd τρέχων κατάλογος εργασίας.
Lnn αναφορές βιβλιοθηκών (AIX).
ctty χαρακτήρας tty.
DEL διαγραμμένο αρχείο.
err σφάλμα πληροφοριών FD (δείτε τη στήλη NAME).
fp. Fileport (Darwin).
jld κατάλογος jail (FreeBSD).
ltx κοινόχρηστο κείμενο βιβλιοθήκης (κώδικας και δεδομένα).
Mxx δεκαεξαδικός αριθμός τύπου αντιστοιχισμένου στη μνήμη xx.
m86 αρχείο DOS Merge που έχει αντιστοιχιστεί.
mem αρχείο που έχει αντιστοιχιστεί στη μνήμη.
mmap συσκευή που έχει αντιστοιχιστεί στη μνήμη.
NOFD για έναν κατάλογο Linux /proc/<PID>/fd που δεν μπορεί να ανοίξει - η διαδρομή καταλόγου εμφανίζεται στη στήλη NAME, ακολουθούμενη από ένα μήνυμα σφάλματος.
pd κατάλογος γονέα.
Rnn άγνωστος αριθμός περιοχής (HP-UX).
rtd ριζικός κατάλογος.
twd τρέχων κατάλογος εργασίας ανά εργασία.
txt κείμενο προγράμματος (κώδικας και δεδομένα).
v86 αρχείο VP/ix που έχει αντιστοιχιστεί.

Το FD ακολουθείται από ένα από αυτά τα σύμβολα, που περιγράφουν τη λειτουργία με την οποία είναι ανοιχτό το αρχείο:

r για πρόσβαση ανάγνωσης.
w για πρόσβαση εγγραφής.
u για πρόσβαση ανάγνωσης και εγγραφής.
κενό διάστημα εάν η λειτουργία είναι άγνωστη και δεν υπάρχει κλείδωμα.
το χαρακτήρας ακολουθεί.
`-' εάν η λειτουργία είναι άγνωστη και υπάρχει κλείδωμα.
το χαρακτήρας ακολουθεί.

Το σύμβολο λειτουργίας ακολουθείται από ένα από αυτά τα σύμβολα κλειδώματος, που περιγράφουν τον τύπο του κλειδώματος που εφαρμόζεται στο αρχείο:

N για ένα κλείδωμα NFS του Solaris άγνωστου τύπου.
r για κλείδωμα ανάγνωσης σε μέρος του αρχείου.
R για κλείδωμα ανάγνωσης σε ολόκληρο το αρχείο.
w για κλείδωμα εγγραφής σε μέρος του αρχείου.
W για κλείδωμα εγγραφής σε ολόκληρο το αρχείο.
u για κλείδωμα ανάγνωσης και εγγραφής οποιουδήποτε μήκους.
U για κλείδωμα άγνωστου τύπου.
x για ένα κλείδωμα SCO OpenServer Xenix σε μέρος του αρχείου.
X για ένα κλείδωμα SCO OpenServer Xenix σε ολόκληρο το αρχείο.
κενό διάστημα εάν δεν υπάρχει κλείδωμα.

Δείτε την ενότητα LOCKS για περισσότερες πληροφορίες σχετικά με το χαρακτήρα πληροφοριών κλειδώματος.

Το περιεχόμενο της στήλης FD αποτελεί ένα ενιαίο πεδίο για ανάλυση σε σενάρια μετα-επεξεργασίας. Οι αριθμοί FD μεγαλύτεροι του 9999 συντομογραφούνται σε ένα \*'' ακολουθούμενο από τα τρία τελευταία ψηφία. Π.χ., το 10001 εμφανίζεται ως*001''.

TYPE είναι ο τύπος του κόμβου που σχετίζεται με το αρχείο - π.χ., VDIR, VREG, κ.λπ.

ή ``ax25'' για μια υποδοχή Linux AX.25.

ή ``a_inode'' για μια ανώνυμη inode.

ή ``icmp'' για μια υποδοχή ICMP.

ή ``inet'' για μια υποδοχή τομέα Internet.

ή ``ipx'' για μια υποδοχή IPX.

ή ``key'' για μια εσωτερική υποδοχή διαχείρισης κλειδιών.

ή ``lla'' για ένα αρχείο πρόσβασης επιπέδου συνδέσμου HP-UX.

ή ``ndrv'' για μια υποδοχή προγράμματος οδήγησης δικτύου.

ή ``netlink'' για μια υποδοχή netlink.

ή ``pack'' για μια υποδοχή πακέτων.

ή ``ppp'' για μια υποδοχή PPP.

ή ``raw'' για μια υποδοχή raw.

ή ``raw6'' για μια υποδοχή raw IPv6.

ή ``rte'' για μια υποδοχή AF_ROUTE.

ή ``sock'' για μια υποδοχή άγνωστου τομέα.

ή ``systm'' για μια υποδοχή συστήματος.

ή ``unix'' για μια υποδοχή τομέα UNIX.

ή ``x.25'' για μια υποδοχή x.25 HP-UX.

ή ``ATALK'' για μια υποδοχή AppleTalk.

ή ``BLK'' για ένα ειδικό αρχείο μπλοκ.

ή ``CHR'' για ένα ειδικό αρχείο χαρακτήρων.

ή ``DEL'' για ένα αρχείο αντιστοίχισης Linux που έχει διαγραφεί.

ή ``DIR'' για έναν κατάλογο.

ή ``DOOR'' για ένα αρχείο VDOOR.

ή ``EVENTFD'' για ένα eventfd.

ή ``FIFO'' για ένα ειδικό αρχείο FIFO.

ή ``FSEVENTS'' για fsevents.

ή ``IPv4'' για μια υποδοχή IPv4.

ή ``IPv6'' για ένα ανοιχτό αρχείο δικτύου IPv6 - ακόμη και αν η διεύθυνσή του είναι IPv4, αντιστοιχισμένη σε μια διεύθυνση IPv6.

ή ``KQUEUE'' για ένα αρχείο ουράς συμβάντων πυρήνα στυλ BSD.

ή ``LINK'' για ένα αρχείο συμβολικού συνδέσμου.

ή ``MPB'' για ένα αρχείο μπλοκ πολλαπλών χρήσεων.

ή ``MPC'' για ένα αρχείο χαρακτήρων πολλαπλών χρήσεων.

ή ``PAS'' για ένα αρχείο /proc/as.

ή ``PAXV'' για ένα αρχείο /proc/auxv.

ή ``PCRE'' για ένα αρχείο /proc/cred.

ή ``PCTL'' για ένα αρχείο ελέγχου /proc.

ή ``PCUR'' για την τρέχουσα διεργασία /proc.

ή ``PCWD'' για τον τρέχοντα κατάλογο εργασίας /proc.

ή ``PDIR'' για έναν κατάλογο /proc.

ή ``PETY'' για έναν τύπο εκτελέσιμου αρχείου /proc (etype).

ή ``PFD'' για ένα αρχείο περιγραφέα αρχείου /proc.

ή ``PFDR'' για έναν κατάλογο περιγραφέων αρχείων /proc.

ή ``PFIL'' για ένα εκτελέσιμο αρχείο /proc.

ή ``PFPR'' για ένα σύνολο καταχωρητών FP /proc.

ή ``PGD'' για ένα αρχείο /proc/pagedata.

ή ``PGID'' για ένα αρχείο ειδοποιητή ομάδας /proc.

ή ``PIPE'' για σωλήνες.

ή ``PLC'' για ένα αρχείο /proc/lwpctl.

ή ``PLDR'' για έναν κατάλογο /proc/lpw.

ή ``PLDT'' για ένα αρχείο /proc/ldt.

ή ``PLPI'' για ένα αρχείο /proc/lpsinfo.

ή ``PLST'' για ένα αρχείο /proc/lstatus.

ή ``PLU'' για ένα αρχείο /proc/lusage.

ή ``PLWG'' για ένα αρχείο /proc/gwindows.

ή ``PLWI'' για ένα αρχείο /proc/lwpsinfo.

ή ``PLWS'' για ένα αρχείο /proc/lwpstatus.

ή ``PLWU'' για ένα αρχείο /proc/lwpusage.

ή ``PLWX'' για ένα αρχείο /proc/xregs.

ή ``PMAP'' για ένα αρχείο αντιστοίχισης /proc (map).

ή ``PMPS'' για ένα αρχείο /proc/maps.

ή ``PMEM'' για ένα αρχείο εικόνας μνήμης /proc.

ή ``PNTF'' για ένα αρχείο ειδοποίησης διαδικασιών /proc.

ή ``POBJ'' για ένα αρχείο αντικειμένου /proc.

ή ``PODR'' για έναν κατάλογο αντικειμένων /proc.

ή ``POLP'' για ένα αρχείο ελαφριάς διαδικασίας παλαιού τύπου /proc.

ή ``POPF'' για ένα αρχείο PID παλαιού τύπου /proc.

ή ``POPG'' για ένα αρχείο δεδομένων σελίδας παλαιού τύπου /proc.

ή ``PORT'' για μια κανονική σωλήνα SYSV.

ή ``PREG'' για ένα αρχείο καταχωρητή /proc.

ή ``PRMP'' για ένα αρχείο /proc/rmap.

ή ``PROCDSC'' για μια περιγραφή επεξεργαστή.

ή ``PRTD'' για έναν κατάλογο ρίζας /proc.

ή ``PSGA'' για ένα αρχείο /proc/sigact.

ή ``PSIN'' για ένα αρχείο /proc/psinfo.

ή ``PSTA'' για ένα αρχείο κατάστασης /proc.

ή ``PSXMQ'' για ένα αρχείο ουράς μηνυμάτων POSIX.

ή ``PSXSEM'' για ένα αρχείο σηματόρου POSIX.

ή ``PSXSHM'' για ένα αρχείο κοινής μνήμης POSIX.

ή ``PTS'' για ένα αρχείο /dev/pts.

ή ``PUSG'' για ένα αρχείο /proc/usage.

ή ``PW'' για ένα αρχείο /proc/watch.

ή ``PXMP'' για ένα αρχείο /proc/xmap.

ή ``REG'' για ένα κανονικό αρχείο.

ή ``SHM'' για ένα αρχείο κοινής μνήμης.

ή ``SMT'' για ένα αρχείο μεταφοράς κοινής μνήμης.

ή ``STR'' για ροές.

ή ``STSO'' για μια υποδοχή ροής.

ή ``UNKN'' για ένα άγνωστο αρχείο.

ή ``UNKNcwd'' για άγνωστο τρέχοντα κατάλογο εργασίας.

ή ``UNKNdel'' για άγνωστο διαγραμμένο αρχείο.

ή ``UNKNfd'' για άγνωστο περιγραφέα αρχείου.

ή ``UNKNmem'' για άγνωστο αρχείο χαρτογραφημένο στη μνήμη.

ή ``UNKNrtd'' για άγνωστο κατάλογο ρίζας.

ή ``UNKNtxt'' για άγνωστο κείμενο προγράμματος.

ή ``UNNM'' για ένα αρχείο χωρίς όνομα.

ή ``XNAM'' για ένα ειδικό αρχείο OpenServer Xenix άγνωστου τύπου.

ή ``XSEM'' για ένα αρχείο σηματόρου OpenServer Xenix.

ή ``XSD'' για ένα αρχείο κοινών δεδομένων OpenServer Xenix.

ή ``UNSP'' για ένα μη υποστηριζόμενο αρχείο.

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

FILE-ADDR περιέχει τη διεύθυνση της δομής αρχείου πυρήνα, όταν έχει καθοριστεί το f στο +f.

FCT περιέχει τη μέτρηση αναφορών αρχείου από τη δομή αρχείου πυρήνα, όταν έχει καθοριστεί το c στο +f.

FILE-FLAG όταν έχει καθοριστεί το g ή το G στο +f, αυτό το πεδίο περιέχει το περιεχόμενο του μέλους f_flag[s] της δομής αρχείου πυρήνα και τις σημαίες ανοικτών αρχείων ανά διαδικασία του πυρήνα (εάν είναι διαθέσιμες). Το `G` προκαλεί την εμφάνισή τους σε δεκαεξαδική μορφή. το `g`, ως συντομογραφία ονομάτων. Μπορεί να εμφανιστούν δύο λίστες με τις καταχωρήσεις να χωρίζονται με κόμματα, οι λίστες χωρίζονται με ερωτηματικό (`;`). Η πρώτη λίστα μπορεί να περιέχει συντομογραφίες για τις τιμές f_flag[s] από τον ακόλουθο πίνακα:

AIO ασύγχρονη είσοδος/έξοδος (π.χ. FAIO)
AP προσάρτηση
ASYN ασύγχρονη είσοδος/έξοδος (π.χ. FASYNC)
BAS μπλοκάρισμα, δοκιμή και ρύθμιση σε χρήση
BKIU μπλοκάρισμα εάν είναι σε χρήση
BL χρήση μετατοπίσεων μπλοκ
BSK αναζήτηση μπλοκ
CA αποφυγή αντιγραφής
CIO ταυτόχρονη είσοδος/έξοδος
CLON κλωνοποίηση
CLRD ανάγνωση CL
CR δημιουργία
DF καθυστέρηση
DFI καθυστέρηση IND
DFLU εκκαθάριση δεδομένων
DIR άμεση
DLY καθυστέρηση
DOCL εκτέλεση κλωνοποίησης
DSYN ακεραιότητα μόνο δεδομένων
DTY πρέπει να είναι κατάλογος
EVO μόνο συμβάν
EX άνοιγμα για εκτέλεση
EXCL αποκλειστικό άνοιγμα
FSYN συγχρονισμένες εγγραφές
GCDF καθυστέρηση κατά τη διάρκεια του unp_gc() (AIX)
GCMK σήμανση κατά τη διάρκεια του unp_gc() (AIX)
GTTY προσπελάσιμο μέσω /dev/tty
HUP εκκρεμεί το HUP
KERN πυρήνας
KIOC είσοδος/έξοδος που εκτελείται από τον πυρήνα
LCK έχει κλείδωμα
LG μεγάλο αρχείο
MBLK μπλοκ μηνυμάτων ροής
MK σήμανση
MNT προσάρτηση
MSYN πολλαπλή συγχρονισμός
NATM μη ενημέρωση της ώρας πρόσβασης
NB είσοδος/έξοδος χωρίς αποκλεισμό
NBDR χωρίς έλεγχο BDRM
NBIO είσοδος/έξοδος SYSV χωρίς αποκλεισμό
NBF έγκυρη συμπλήρωση
NC χωρίς προσωρινή αποθήκευση
ND χωρίς καθυστέρηση
NDSY χωρίς συγχρονισμό δεδομένων
NET δίκτυο
NFLK μη παρακολούθηση συνδέσμων
NMFS σύστημα αρχείων NM
NOTO απενεργοποίηση της διακοπής παρασκηνίου
NSH χωρίς κοινή χρήση
NTTY χωρίς τερματικό ελέγχου
OLRM καθρέφτης OLR
PAIO ασύγχρονη είσοδος/έξοδος POSIX
PATH διαδρομή
PP σωλήνας POSIX
R ανάγνωση
RC προσωρινή αποθήκευση αρχείων και εγγραφών
REV ανάκληση
RSH κοινή ανάγνωση
RSYN συγχρονισμός ανάγνωσης
RW πρόσβαση ανάγνωσης και εγγραφής
SL κοινό κλείδωμα
SNAP στιγμιότυπο με μαγείρεμα
SOCK υποδοχή
SQSH κοινό σύνολο OpenServer κατά το άνοιγμα
SQSV σύνολο SVM OpenServer κατά το άνοιγμα
SQR επιδιόρθωση συνόλου OpenServer κατά το άνοιγμα
SQS1 πλήρες κοινό άνοιγμα OpenServer
SQS2 μερικό κοινό άνοιγμα OpenServer
STPI διακοπή εισόδου/εξόδου
SWR συγχρονισμένη ανάγνωση
SYN ακεραιότητα αρχείου κατά την εγγραφή
TCPM αποφυγή σύγκρουσης TCP
TMPF προσωρινό αρχείο
TR περικοπή
W εγγραφή
WKUP συγχρονισμός παράλληλης εισόδου/εξόδου
WTG συγχρονισμός παράλληλης εισόδου/εξόδου
VH εκκρεμεί το vhangup
VTXT εικονικό κείμενο
XL αποκλειστικό κλείδωμα

αυτή η λίστα ονομάτων προέρχεται από τα F* #define στα αρχεία κεφαλίδων διάλεκτου <fcntl.h>,
<linux</fs.h>, <sys/fcntl.c>, <sys/fcntlcom.h> και <sys/file.h>. Δείτε το αρχείο κεφαλίδας common.h για μια λίστα που δείχνει την αντιστοιχία μεταξύ των παραπάνω συντομευμένων ονομάτων
και των ορισμών αρχείων κεφαλίδων.

η δεύτερη λίστα (μετά το ερωτηματικό) μπορεί να περιέχει συντομευμένα ονόματα για σημαίες αρχείων που ανοίγονται ανά διεργασία από τον πυρήνα από τον παρακάτω πίνακα:

ALLC      κατανεμημένο
BR        το αρχείο έχει διαβαστεί
BHUP      η δραστηριότητα έχει σταματήσει από το SIGHUP
BW        το αρχείο έχει γραφτεί
CLSG      κλείνει
CX        κλείνει κατά την εκτέλεση (δείτε το fcntl(F_SETFD))
LCK       έχει εφαρμοστεί κλείδωμα
MP        χαρτογραφημένο στη μνήμη
OPIP      άνοιγμα σε εξέλιξη
RSVW      επιφυλαγμένη αναμονή
SHMT      έχει οριστεί το UF_FSHMAT (AIX)
USE       σε χρήση (πολυνηματικό)

NODE-ID    (ή INODE-ADDR για ορισμένες διαλέκτους) περιέχει ένα μοναδικό αναγνωριστικό για τον κόμβο αρχείου (συνήθως τη διεύθυνση vnode ή inode του πυρήνα, αλλά μερικές φορές και μια συνένωση του αριθμού συσκευής και του αριθμού κόμβου) όταν έχει καθοριστεί το n στο +f.

DEVICE     περιέχει τους αριθμούς συσκευής, χωρισμένους με κόμματα, για ένα αρχείο ειδικού τύπου χαρακτήρα, ένα αρχείο ειδικού τύπου μπλοκ, ένα κανονικό αρχείο, ένα αρχείο καταλόγου ή ένα αρχείο NFS.

ή "μνήμη" για έναν κόμβο συστήματος αρχείων μνήμης κάτω από το Tru64 UNIX.

ή τη διεύθυνση της ιδιωτικής περιοχής δεδομένων μιας ροής υποδοχής Solaris.

ή μια διεύθυνση αναφοράς πυρήνα που προσδιορίζει το αρχείο (η διεύθυνση αναφοράς πυρήνα
μπορεί να χρησιμοποιηθεί για FIFO, για παράδειγμα).

ή η βασική διεύθυνση ή το όνομα της συσκευής μιας υποδοχής AX.25 του Linux.

Συνήθως, εμφανίζονται μόνο τα κατώτερα τριάντα δύο bits των διευθύνσεων του πυρήνα Tru64 UNIX.

SIZE, SIZE/OFF ή OFFSET
είναι το μέγεθος του αρχείου ή η μετατόπιση του αρχείου σε byte. Μια τιμή εμφανίζεται σε αυτήν τη στήλη μόνο εάν είναι διαθέσιμη. Το lsof εμφανίζει όποια τιμή - μέγεθος ή μετατόπιση - είναι κατάλληλη για τον τύπο του αρχείου και την έκδοση του lsof.

Σε ορισμένα UNIX, το lsof δεν μπορεί να λάβει ακριβείς ή συνεπείς πληροφορίες μετατόπισης αρχείου από τις πηγές δεδομένων του πυρήνα, μερικές φορές μόνο για συγκεκριμένους τύπους αρχείων (π.χ. αρχεία υποδοχών). Σε άλλες περιπτώσεις, τα αρχεία δεν έχουν σταθερό μέγεθος - π.χ. υποδοχές, FIFOs, σωλήνες - επομένως το lsof εμφανίζει για το μέγεθός τους τις ποσότητες περιεχομένου που βρίσκει στις περιγραφές των ρυθμιστικών διακομιστή του πυρήνα (π.χ. μετρητές μεγέθους ρυθμιστικού διακομιστή υποδοχής ή μεγέθη παραθύρων TCP/IP). Ανατρέξτε στις Συχνές Ερωτήσεις του lsof (Η ενότητα Συχνές Ερωτήσεις δίνει την τοποθεσία της) για περισσότερες πληροφορίες.

Το μέγεθος του αρχείου εμφανίζεται σε δεκαδική μορφή. η μετατόπιση εμφανίζεται συνήθως σε δεκαδική μορφή με ένα προκαταρκτικό "0t", εάν περιέχει 8 ψηφία ή λιγότερα. σε δεκαεξαδική μορφή με ένα προκαταρκτικό "0x", εάν είναι μεγαλύτερη από 8 ψηφία. (Ανατρέξτε στην περιγραφή της επιλογής -o για πληροφορίες σχετικά με το πότε το 8 μπορεί να αλλάξει σε μια άλλη τιμή).

Έτσι, το προκαταρκτικό "0t" και "0x" προσδιορίζουν μια μετατόπιση όταν η στήλη μπορεί να περιέχει τόσο μέγεθος όσο και μετατόπιση (δηλαδή, ο τίτλος της είναι SIZE/OFF).

Εάν καθοριστεί η επιλογή -o, το lsof εμφανίζει πάντα τη μετατόπιση του αρχείου (ή τίποτα εάν δεν είναι διαθέσιμη η μετατόπιση) και επισημαίνει τη στήλη ως OFFSET. Η μετατόπιση ξεκινά πάντα με "0t" ή "0x" όπως περιγράφεται παραπάνω.

Ο χρήστης του lsof μπορεί να ελέγξει την αλλαγή από "0t" σε "0x" με την επιλογή -o. Ανατρέξτε στην περιγραφή της για περισσότερες πληροφορίες.

Εάν καθοριστεί η επιλογή -s, το lsof εμφανίζει πάντα το μέγεθος του αρχείου (ή τίποτα εάν δεν είναι διαθέσιμο το μέγεθος) και επισημαίνει τη στήλη ως SIZE. Οι επιλογές -o και -s είναι αμοιβαία αποκλειόμενες. δεν μπορούν να καθοριστούν και οι δύο.

Εάν καθοριστεί η επιλογή -H, το lsof εμφανίζει το μέγεθος του αρχείου σε μορφή φιλική προς το χρήστη.

Για αρχεία που δεν έχουν σταθερό μέγεθος - π.χ. δεν βρίσκονται σε μια συσκευή δίσκου - το lsof θα εμφανίσει τις κατάλληλες πληροφορίες σχετικά με το τρέχον μέγεθος ή τη θέση του αρχείου, εάν είναι διαθέσιμες στις δομές του πυρήνα που ορίζουν το αρχείο.

NLINK περιέχει τον αριθμό συνδέσμων του αρχείου όταν έχει καθοριστεί το +L.

NODE είναι ο αριθμός κόμβου ενός τοπικού αρχείου.

ή ο αριθμός inode ενός αρχείου NFS στον διακομιστή.

ή ο τύπος πρωτοκόλλου Internet - π.χ. "TCP".

ή "STR" για μια ροή.

ή "CCITT" για μια υποδοχή HP-UX x.25.

ή το IRQ ή ο αριθμός inode μιας συσκευής υποδοχής AX.25 του Linux.

NAME είναι το όνομα του σημείου προσάρτησης και του συστήματος αρχείων στο οποίο βρίσκεται το αρχείο.

ή το όνομα ενός αρχείου που καθορίζεται στην επιλογή ονομάτων (αφού επιλυθούν τυχόν συμβολικοί σύνδεσμοι).

ή το όνομα μιας ειδικής συσκευής χαρακτήρων ή μιας ειδικής συσκευής μπλοκ.

ή οι τοπικές και απομακρυσμένες διευθύνσεις Internet ενός αρχείου δικτύου. η τοπική διεύθυνση κεντρικού υπολογιστή ή ο αριθμός IP ακολουθείται από μια άνω και κάτω τελεία (:) και την θύρα, το "->", και η διμερής απομακρυσμένη διεύθυνση. οι διευθύνσεις IP μπορεί να αναφέρονται ως αριθμοί ή ονόματα, ανάλογα με τις επιλογές +|-M, -n και -P. οι διευθύνσεις IPv6 που χωρίζονται με άνω και κάτω τελεία περικλείονται σε αγκύλες. οι διευθύνσεις IPv4 INADDR_ANY και IPv6 IN6_IS_ADDR_UNSPECIFIED και οι μηδενικές θύρες αναπαρίστανται με ένα αστερίσκο (*). μια απομακρυσμένη διεύθυνση UDP μπορεί να ακολουθείται από την ποσότητα του χρόνου που έχει παρέλθει από την τελευταία αποστολή πακέτου στον προορισμό. οι απομακρυσμένες διευθύνσεις TCP, UDP και UDPLITE μπορούν να ακολουθούνται από πληροφορίες TCP/TPI σε παρένθεση - κατάσταση (π.χ. "(ESTABLISHED)", "(Unbound)"), μεγέθη ουράς και μεγέθη παραθύρων (δεν υποστηρίζονται σε όλες τις εκδόσεις) - με τρόπο παρόμοιο με αυτόν που αναφέρει το [netstat]({filename}../../netstat)(1). ανατρέξτε στην περιγραφή της επιλογής -T ή στην περιγραφή του πεδίου TCP/TPI στην ΕΞΟΔΟΣ ΓΙΑ ΑΛΛΑ ΠΡΟΓΡΑΜΜΑΤΑ για περισσότερες πληροφορίες σχετικά με την κατάσταση, το μέγεθος της ουράς και το μέγεθος του παραθύρου.

ή η διεύθυνση ή το όνομα ενός UNIX domain socket, ενδεχομένως συμπεριλαμβανομένου ενός stream clone device name, ενός file system object's path name, τοπικών και απομακρυσμένων διευθύνσεων kernel,
πληροφοριών ζεύγους socket, και μιας δεσμευμένης διεύθυνσης vnode·

ή τα τοπικά και απομακρυσμένα ονόματα σημείων τοποθέτησης ενός NFS file·

ή ``STR'', ακολουθούμενο από το όνομα του stream·

ή ένα όνομα συσκευής stream character, ακολουθούμενο από ``->'' και το όνομα του stream ή μια λίστα ονομάτων modules stream, διαχωρισμένων με ``->''·

ή ``STR:'', ακολουθούμενο από τα ονόματα της συσκευής και των modules SCO OpenServer stream, διαχωρισμένα με ``->''·

ή όνομα καταλόγου συστήματος, `` -- '', και όσα περισσότερα στοιχεία του path name μπορεί να βρει το lsof στην cache ονομάτων του kernel για επιλεγμένα dialects (Δείτε την ενότητα KERNEL NAME CACHE για περισσότερες πληροφορίες)·

ή ``PIPE->'', ακολουθούμενο από μια διεύθυνση προορισμού kernel pipe του Solaris·

ή ``COMMON:'', ακολουθούμενο από το όνομα της συσκευής της δομής πληροφοριών vnode του Solaris common vnode·

ή η οικογένεια διευθύνσεων, ακολουθούμενη από μια κάθετο (`/`), ακολουθούμενη από δεκατέσσερις διευθύνσεις raw socket που χωρίζονται με κόμμα, που δεν είναι Internet·

ή η τοπική διεύθυνση HP-UX x.25, ακολουθούμενη από τον εικονικό αριθμό σύνδεσης (αν υπάρχει), ακολουθούμενη από την απομακρυσμένη διεύθυνση (αν υπάρχει)·

ή ``(dead)'' για αποσυνδεδεμένα αρχεία Tru64 UNIX - συνήθως αρχεία τερματικού που έχουν επισημανθεί με το ioctl TIOCNOTTY και έχουν κλείσει από daemons·

ή ``rd=<offset>'' και ``wr=<offset>'' για τις τιμές των offsets ανάγνωσης και εγγραφής ενός FIFO·

ή ``clone n:/dev/event'' για file clones της συσκευής /dev/event του SCO OpenServer, όπου το n είναι ο μικρός αριθμός συσκευής του αρχείου·

ή ``(socketpair: n)'' για ένα UNIX domain socket Solaris 2.6, 8, 9 ή 10, που δημιουργήθηκε από τη συνάρτηση δικτύου socketpair(3N)·

ή ``no PCB'' για αρχεία socket που δεν έχουν συνδεδεμένο ένα block πρωτοκόλλου, προαιρετικά ακολουθούμενο από ``, CANTSENDMORE'' εάν η αποστολή στο socket έχει απενεργοποιηθεί ή ``, CANTRCVMORE'' εάν η λήψη στο socket έχει απενεργοποιηθεί (π.χ. από τη συνάρτηση [shutdown]({filename}../../shutdown)(2))·

ή τις τοπικές και απομακρυσμένες διευθύνσεις μιας υποδοχής IPX του Linux σε μορφή αρχείου
<net>:[<node>:]<port>, ακολουθούμενη από τις τιμές των ουρών μετάδοσης και λήψης σε παρένθεση, και την κατάσταση σύνδεσης·

ή ``dgram'' ή ``stream'' για τον τύπο των ενσωματωμένων υποδοχών τομέα UNIX του UnixWare 7.1.1 και νεότερων, ακολουθούμενη από άνω και κάτω τελεία (':') και την τοπική διαδρομή αρχείου, όταν είναι διαθέσιμη, ακολουθούμενη από
``->'' και την απομακρυσμένη διαδρομή αρχείου ή την δεκαεξαδική διεύθυνση υποδοχής πυρήνα, όταν είναι διαθέσιμη·

ή την τιμή συσχέτισης, τον δείκτη συσχέτισης, την τιμή τελικού σημείου, την τοπική διεύθυνση, την τοπική θύρα, την απομακρυσμένη διεύθυνση και την απομακρυσμένη θύρα για τις υποδοχές SCTP του Linux·

ή ``protocol: '' ακολουθούμενη από το χαρακτηριστικό πρωτοκόλλου της υποδοχής Linux.

Για τις διαλέκτους που υποστηρίζουν ένα σύστημα αρχείων ``namefs'', το οποίο επιτρέπει την επισύναψη ενός αρχείου σε ένα άλλο με το fattach(3C), το lsof θα προσθέσει ``(FA:<address1><direction><address2>)'' στη στήλη ΟΝΟΜΑ.
Τα <address1> και <address2> είναι δεκαεξαδικές διευθύνσεις vnode. Το <direction> θα είναι ``<-'' εάν το <address2> έχει επισυναφθεί σε αυτό το vnode, του οποίου η διεύθυνση είναι <address1>· και ``->'' εάν το <address1>, η διεύθυνση vnode αυτού του vnode, έχει επισυναφθεί στο <address2>. Το <address1> μπορεί να παραλειφθεί εάν
ήδη εμφανίζεται στη στήλη ΣΥΣΚΕΥΗ.

Το Lsof μπορεί να προσθέσει δύο πρόσθετες σημειώσεις στη στήλη ΟΝΟΜΑ για τα ανοιχτά αρχεία Solaris 10: ``(?)'' εάν το lsof θεωρεί ότι η διαδρομή του αρχείου είναι αμφίβολης ακρίβειας· και ``(deleted)'' εάν έχει καθοριστεί η επιλογή -X και το lsof ανιχνεύει ότι η διαδρομή του ανοιχτού αρχείου έχει διαγραφεί. Ανατρέξτε στις Συχνές Ερωτήσεις του lsof (Η ενότητα Συχνών Ερωτήσεων δίνει τη θέση της) για περισσότερες πληροφορίες σχετικά με αυτές τις προσθήκες στη στήλη ΟΝΟΜΑ.

ΚΛΕΙΔΑΡΙΑ

Το Lsof δεν μπορεί να αναφέρει επαρκώς την μεγάλη ποικιλία από κλειδαριές αρχείων UNIX σε ένα μόνο χαρακτήρα. Αυτό που αναφέρει σε ένα μόνο χαρακτήρα είναι ένας συμβιβασμός μεταξύ των πληροφοριών που βρίσκει στον πυρήνα και των περιορισμών της μορμής αναφοράς.

Επιπλέον, όταν μια διαδικασία διατηρεί πολλές κλειδαριές σε επίπεδο byte σε ένα αρχείο, το lsof αναφέρει μόνο την κατάσταση της πρώτης κλειδαριάς που συναντά. Εάν είναι κλειδαριά σε επίπεδο byte, τότε ο χαρακτήρας κλειδαριάς θα αναφερθεί σε πεζά - δηλαδή, r',w' ή `x' - αντί για το αντίστοιχο κεφαλαίο που αναφέρεται για μια πλήρη κλειδαριά αρχείου.

Γενικά, το lsof μπορεί να αναφέρει μόνο κλειδαριές που τηρούνται από τοπικές διαδικασίες σε τοπικά αρχεία. Όταν μια τοπική διαδικασία ορίζει μια κλειδαριά σε ένα αρχείο που είναι συνδεδεμένο απομακρυσμένα (π.χ., NFS), ο διακομιστής κεντρικού υπολογιστή εξ αποστάσεως συνήθως καταγράφει την κατάσταση κλειδαριάς. Μια εξαίρεση είναι το Solaris - σε ορισμένα επίπεδα επιδιόρθωσης του 2.3 και σε όλες τις εκδόσεις άνω του 2.4, ο πυρήνας Solaris καταγράφει πληροφορίες σχετικά με απομακρυσμένες κλειδαριές σε τοπικές δομές.

Το Lsof έχει δυσκολίες στην αναφορά κλειδαριών για ορισμένες διαλέκτους UNIX. Ανατρέξτε στην ενότητα ΣΦΑΛΜΑΤΑ αυτής της σελίδας εγχειριδίου ή στις Συχνές Ερωτήσεις του lsof (Η ενότητα Συχνών Ερωτήσεων δίνει τη θέση της) για περισσότερες πληροφορίες.

ΕΞΟΔΟΣ ΓΙΑ ΑΛΛΑ ΠΡΟΓΡΑΜΜΑΤΑ

Όταν καθορίζεται η επιλογή -F, το lsof παράγει έξοδο που είναι κατάλληλη για επεξεργασία από ένα άλλο πρόγραμμα - π.χ., ένα σενάριο awk ή Perl ή ένα πρόγραμμα C.

Κάθε μονάδα πληροφορίας εξάγεται σε ένα πεδίο που αναγνωρίζεται με έναν χαρακτήρα έναρξης και τερματίζεται με ένα NL (012) (ή ένα NUL (000) εάν καθοριστεί ο χαρακτήρας πεδίου 0). Τα δεδομένα του πεδίου ακολουθούν αμέσως μετά τον χαρακτήρα αναγνώρισης πεδίου και εκτείνονται μέχρι τον τερματιστή πεδίου.

Είναι δυνατό να θεωρήσουμε την έξοδο πεδίων ως σύνολα διαδικασιών και αρχείων. Ένα σύνολο διαδικασιών ξεκινά με ένα πεδίο του οποίου ο αναγνωριστής είναι p (για αναγνωριστικό διαδικασίας (PID)). Επεκτείνεται μέχρι την αρχή του επόμενου πεδίου PID ή την αρχή του πρώτου συνόλου αρχείων της διαδικασίας, όποιο έρχεται πρώτο. Στο σύνολο διαδικασιών περιλαμβάνονται πεδία που προσδιορίζουν την εντολή, τον αριθμό αναγνώρισης ομάδας διαδικασιών (PGID), το αναγνωριστικό εργασίας (TID) και τον αριθμό αναγνώρισης χρήστη (UID) ή το όνομα σύνδεσης.

Ένα σύνολο αρχείων ξεκινά με ένα πεδίο του οποίου ο αναγνωριστής είναι f (για περιγραφέας αρχείου). Ακολουθούν γραμμές που περιγράφουν τη λειτουργία πρόσβασης του αρχείου, την κατάσταση κλειδώματος, τον τύπο, τη συσκευή, το μέγεθος, την απόσπαση, τον i-κόμβο, το πρωτόκολλο, το όνομα και τα ονόματα μονάδων ροής. Επεκτείνεται μέχρι την αρχή του επόμενου αρχείου ή συνόλου διαδικασιών, όποιο έρχεται πρώτο.

Όταν ο τερματιστής πεδίου NUL (000) έχει επιλεγεί με τον χαρακτήρα αναγνώρισης πεδίου 0, το lsof τερματίζει κάθε σύνολο διαδικασιών και αρχείων με έναν χαρακτήρα NL (012).

Το Lsof παράγει πάντα ένα πεδίο, το πεδίο PID (p). Στη λειτουργία επανάληψης, παράγεται επίσης ο δείκτης (m). Όλα τα άλλα πεδία μπορούν να δηλωθούν προαιρετικά στη λίστα χαρακτήρων αναγνώρισης πεδίων που ακολουθεί την επιλογή -F. Όταν ένας χαρακτήρας επιλογής πεδίου προσδιορίζει ένα στοιχείο που το lsof δεν καταγράφει συνήθως - π.χ., PPID, που επιλέγεται με -R - η προδιαγραφή του χαρακτήρα πεδίου - π.χ., -FR - επιλέγει επίσης την καταγραφή του στοιχείου.

Η έκδοση του Lsof από την 4.88 έως την 4.93.2 παρήγαγε πάντα ένα επιπλέον πεδίο, το πεδίο περιγραφέα αρχείου (f). Ωστόσο, η έκδοση αυτή του lsof δεν το παράγει. Αυτή η αλλαγή γίνεται για την υποστήριξη της περίπτωσης χρήσης όπου ένας χρήστης χρειάζεται μόνο το πεδίο PID και δεν χρειάζεται το πεδίο περιγραφέα αρχείου. Καθορίστε το f ρητά εάν χρειάζεστε το πεδίο.

Είναι απολύτως πιθανό να επιλέξετε ένα σύνολο πεδίων που δεν μπορούν να αναλυθούν εύκολα - π.χ., εάν δεν επιλεγεί το πεδίο περιγραφέα αρχείου, μπορεί να είναι δύσκολο να προσδιοριστούν τα σύνολα αρχείων. Για να σας βοηθήσει να αποφύγετε αυτή τη δυσκολία, το lsof υποστηρίζει την επιλογή -F. Επιλέγει την έξοδο όλων των πεδίων με τερματιστές NL (η ζεύξη επιλογών -F0 επιλέγει την έξοδο όλων των πεδίων με τερματιστές NUL). Για λόγους συμβατότητας, ούτε οι επιλογές -F ούτε οι -F0 επιλέγουν το πεδίο ακατέργαστης συσκευής.

Αυτά είναι τα πεδία που θα παράγει το lsof. Ο μεμονωμένος χαρακτήρας που αναφέρεται πρώτος είναι ο αναγνωριστής πεδίου.

a    λειτουργία πρόσβασης αρχείου
c    όνομα εντολής διαδικασίας (όλοι οι χαρακτήρες από τη δομή proc ή χρήστη)
C    αριθμός κοινής χρήσης δομής αρχείου
d    χαρακτήρας κωδικού συσκευής αρχείου
D    αριθμός συσκευής (0x<δεκαεξαδικό>)
f    περιγραφέας αρχείου
F    διεύθυνση δομής αρχείου (0x<δεκαεξαδικό>)
G    σημαίες αρχείου (0x<δεκαεξαδικό>; ονόματα εάν ακολουθεί το +fg)
g    αναγνωριστικό ομάδας διαδικασιών
i    αριθμός i-κόμβου αρχείου
K    αναγνωριστικό εργασίας
k    αριθμός συνδέσμων
l    κατάσταση κλειδώματος αρχείου
L    όνομα σύνδεσης διαδικασίας
m    δείκτης μεταξύ επαναλαμβανόμενων εξόδων (πάντα επιλέγεται σε λειτουργία επανάληψης)
M    το όνομα εντολής εργασίας
n    όνομα αρχείου, σχόλιο, διεύθυνση διαδικτύου
N    αναγνωριστικό κόμβου (0x<δεκαεξαδικό>)
o    απόσπαση αρχείου (0t<δεκαδικό> ή 0x<δεκαεξαδικό>, δείτε την επιλογή -o o)
p    αναγνωριστικό διαδικασίας (πάντα επιλέγεται)
P    όνομα πρωτοκόλλου
r    ακατέργαστος αριθμός συσκευής (0x<δεκαεξαδικό>)
R    αναγνωριστικό μητρικής διαδικασίας
s    μέγεθος αρχείου (δεκαδικό)
S    αναγνωριστικό ροής αρχείου
t    τύπος αρχείου
T    πληροφορίες TCP/TPI, που προσδιορίζονται από προθέματα (το `=` είναι μέρος του προθέματος):
QR=<μέγεθος ουράς ανάγνωσης>
QS=<μέγεθος ουράς αποστολής>
SO=<επιλογές και τιμές υποδοχής> (όχι όλες οι διάλεκτοι)
SS=<καταστάσεις υποδοχής> (όχι όλες οι διάλεκτοι)
ST=<κατάσταση σύνδεσης>
TF=<σημαίες και τιμές TCP> (όχι όλες οι διάλεκτοι)
WR=<μέγεθος παραθύρου ανάγνωσης> (όχι όλες οι διάλεκτοι)
WW=<μέγεθος παραθύρου εγγραφής> (όχι όλες οι διάλεκτοι)
(Οι πληροφορίες TCP/TPI δεν αναφέρονται για όλες τις υποστηριζόμενες διάλεκτους UNIX. Η έξοδος βοήθειας -h ή -? για την επιλογή -T θα δείξει ποιες πληροφορίες TCP/TPI μπορούν να ζητηθούν).
u    αναγνωριστικό χρήστη διαδικασίας
z    όνομα ζώνης Solaris 10 και νεότερων
Z    περιβάλλον ασφαλείας SELinux (απενεργοποιείται όταν το SELinux είναι απενεργοποιημένο)
0   χρησιμοποιήστε τον χαρακτήρα τερματιστή πεδίου NUL αντί του NL
19  χαρακτήρες αναγνώρισης πεδίου ειδικοί για τη διάλεκτο (Η έξοδος της επιλογής -F? προσδιορίζει τις πληροφορίες που μπορούν να βρεθούν στα πεδία ειδικά για τη διάλεκτο).

Μπορείτε να λάβετε διαδικτυακή πληροφορία βοήθειας σχετικά με αυτούς τους χαρακτήρες και τις περιγραφές τους, καθορίζοντας την επιλογή -F?. (Διαφύγετε τον χαρακτήρα ? όπως απαιτεί το κέλυφός σας.) Πρόσθετες πληροφορίες σχετικά με το περιεχόμενο των πεδίων μπορούν να βρεθούν στην ενότητα ΕΞΟΔΟΣ.

Ως παράδειγμα, η -F pcfn θα επιλέξει το αναγνωριστικό διεργασίας (p), το όνομα της εντολής (c), τον περιγραφέα αρχείου (f) και το όνομα του αρχείου (n) με ένα χαρακτήρα τερματισμού πεδίου NL. Η -F pcfn0 επιλέγει την ίδια έξοδο με ένα χαρακτήρα τερματισμού πεδίου NUL (000).

Το Lsof δεν παράγει όλα τα πεδία για κάθε διεργασία ή σύνολο αρχείων, μόνο αυτά που είναι διαθέσιμα. Ορισμένα πεδία είναι αμοιβαία αποκλειόμενα: χαρακτήρες συσκευής αρχείου και αριθμοί συσκευής αρχείου κύριου/δευτερεύοντος. αριθμός inode αρχείου και όνομα πρωτοκόλλου. όνομα αρχείου και αναγνωριστικό ροής. μέγεθος αρχείου και μετατόπιση. Ένα ή το άλλο μέλος αυτών των αμοιβαία αποκλειόμενων συνόλων θα εμφανιστεί στην έξοδο του πεδίου, αλλά όχι και τα δύο.

Κανονικά, το lsof τερματίζει κάθε πεδίο με έναν χαρακτήρα NL (012). Ο χαρακτήρας αναγνωριστικού πεδίου 0 (μηδέν) μπορεί να καθοριστεί για να αλλάξει ο χαρακτήρας τερματισμού πεδίου σε NUL (000). Ένας τερματιστής πεδίου NUL μπορεί να είναι πιο εύκολος στην επεξεργασία με το xargs (1), για παράδειγμα, ή με προγράμματα των οποίων οι μηχανισμοί αναφοράς ενδέχεται να μην μπορούν εύκολα να χειριστούν την ποικιλία χαρακτήρων στην έξοδο του πεδίου. Όταν χρησιμοποιείται ο τερματιστής πεδίου NUL, το lsof τερματίζει κάθε διεργασία και σύνολο αρχείων με έναν χαρακτήρα NL (012).

Τρία βοηθήματα για τη δημιουργία προγραμμάτων που μπορούν να επεξεργαστούν την έξοδο πεδίου lsof περιλαμβάνονται στην διανομή lsof. Το πρώτο είναι ένα αρχείο κεφαλίδας C, το lsof_fields.h, το οποίο περιέχει σύμβολα για τους χαρακτήρες αναγνωριστικού πεδίου, δείκτες για την αποθήκευσή τους σε έναν πίνακα και συμβολοσειρές εξήγησης που μπορούν να μεταγλωττιστούν σε προγράμματα. Το Lsof χρησιμοποιεί αυτό το αρχείο κεφαλίδας.


Η δεύτερη βοήθεια είναι ένα σύνολο δειγμάτων σεναρίων που επεξεργάζονται την έξοδο πεδίων, γραμμένα σε awk, Perl 4 και Perl 5. Βρίσκονται στον υποκατάλογο scripts της διανομής lsof.

Η τρίτη βοήθεια είναι η βιβλιοθήκη C που χρησιμοποιείται για τη σουίτα δοκιμών του lsof. Η σουίτα δοκιμών είναι γραμμένη σε C και χρησιμοποιεί την έξοδο πεδίων για να επικυρώσει τη σωστή λειτουργία του lsof. Η βιβλιοθήκη βρίσκεται στο αρχείο tests/LTlib.c της διανομής lsof. Η βιβλιοθήκη χρησιμοποιεί την πρώτη βοήθεια, το αρχείο κεφαλίδας lsof_fields.h.

ΑΠΟΚΛΕΙΣΜΟΙ ΚΑΙ ΧΡΟΝΙΚΑ ΟΡΙΑ

Το Lsof μπορεί να αποκλειστεί από ορισμένες συναρτήσεις πυρήνα που χρησιμοποιεί - lstat(2), readlink(2) και stat(2). Αυτές οι συναρτήσεις σταματούν στον πυρήνα, για παράδειγμα, όταν τα συστήματα όπου βρίσκονται τα τοποθετημένα συστήματα αρχείων NFS γίνονται απρόσιτα.

Το Lsof προσπαθεί να διακόψει αυτούς τους αποκλεισμούς με χρονόμετρα και θυγατρικές διεργασίες, αλλά οι τεχνικές αυτές δεν είναι εντελώς αξιόπιστες. Όταν το lsof καταφέρει να διακόψει έναν αποκλεισμό, θα το αναφέρει με ένα μήνυμα σφάλματος. Τα μηνύματα μπορούν να κατασταλούν με τις επιλογές -t και -w.

Η προεπιλεγμένη τιμή χρονικού ορίου μπορεί να εμφανιστεί με τις επιλογές -h ή -?, και μπορεί να αλλάξει με την επιλογή -S [t]. Το ελάχιστο για το t είναι δύο δευτερόλεπτα, αλλά θα πρέπει να αποφεύγετε μικρές τιμές, επειδή η αργή απόκριση του συστήματος μπορεί να προκαλέσει την απροσδόκητη λήξη σύντομων χρονικών ορίων και ίσως να σταματήσει το lsof πριν προλάβει να παράγει οποιαδήποτε έξοδο.

Όταν το lsof πρέπει να διακόψει έναν αποκλεισμό κατά την πρόσβασή του σε πληροφορίες τοποθετημένου συστήματος αρχείων, συνήθως συνεχίζει, αν και με λιγότερες πληροφορίες διαθέσιμες για εμφάνιση σχετικά με τα ανοιχτά αρχεία.

Το Lsof μπορεί επίσης να κατευθυνθεί να αποφεύγει την προστασία των χρονομέτρων και των θυγατρικών διεργασιών κατά τη χρήση των συναρτήσεων πυρήνα που ενδέχεται να το μπλοκάρουν, καθορίζοντας την επιλογή -O. Ενώ αυτό θα επιτρέψει στο lsof να ξεκινήσει με λιγότερη επιβάρυνση, το εκθέτει πλήρως στις καταστάσεις πυρήνα που ενδέχεται να το μπλοκάρουν. Χρησιμοποιήστε αυτήν την επιλογή με προσοχή.

ΑΠΟΦΥΓΗ ΑΠΟΚΛΕΙΣΜΩΝ ΠΥΡΗΝΑ

Μπορείτε να χρησιμοποιήσετε την επιλογή -b για να πείτε στο lsof να αποφύγει τη χρήση συναρτήσεων πυρήνα που θα το μπλοκάρουν. Ισχύουν ορισμένες προφυλάξεις.

Πρώτον, η χρήση αυτής της επιλογής συνήθως απαιτεί το σύστημά σας να παρέχει εναλλακτικούς αριθμούς συσκευών στη θέση των αριθμών συσκευών που θα έπαιρνε κανονικά το lsof με τις συναρτήσεις lstat(2) και stat(2). Δείτε την ενότητα ΕΝΑΛΛΑΚΤΙΚΟΙ ΑΡΙΘΜΟΙ ΣΥΣΚΕΥΩΝ για περισσότερες πληροφορίες σχετικά με τους εναλλακτικούς αριθμούς συσκευών.

Δεύτερον, δεν μπορείτε να καθορίσετε ονόματα για να εντοπίσει το lsof, εκτός αν είναι ονόματα συστήματος αρχείων. Αυτό συμβαίνει επειδή το lsof πρέπει να γνωρίζει τους αριθμούς συσκευής και i-node των αρχείων που αναφέρονται με ονόματα στις επιλογές lsof, και η επιλογή -b εμποδίζει το lsof να τα αποκτήσει. Επιπλέον, επειδή το lsof έχει μόνο αριθμούς συσκευών για τα συστήματα αρχείων που έχουν εναλλακτικές λύσεις, η ικανότητά του να εντοπίζει αρχεία σε συστήματα αρχείων εξαρτάται πλήρως από τη διαθεσιμότητα και την ακρίβεια των εναλλακτικών λύσεων. Εάν δεν υπάρχουν διαθέσιμες εναλλακτικές λύσεις ή εάν είναι λανθασμένες, το lsof δεν θα μπορεί να εντοπίσει αρχεία στα καθορισμένα συστήματα αρχείων.

Τρίτον, εάν τα ονόματα των καταλόγων του συστήματος αρχείων σας, τα οποία το lsof λαμβάνει από τον πίνακα συνδέσεων του συστήματός σας, είναι συμβολικοί σύνδεσμοι, το lsof δεν θα μπορέσει να επιλύσει τους συνδέσμους. Αυτό συμβαίνει επειδή η επιλογή -b προκαλεί το lsof να αποφεύγει τη συνάρτηση [readlink]({filename}../../readlink)(2) του πυρήνα, την οποία χρησιμοποιεί για να επιλύσει τους συμβολικούς συνδέσμους.

Τέλος, η χρήση της επιλογής -b προκαλεί το lsof να εκδίδει μηνύματα προειδοποίησης όταν χρειάζεται να χρησιμοποιήσει τις συναρτήσεις του πυρήνα, τις οποίες η επιλογή -b το κατευθύνει να αποφεύγει. Μπορείτε να καταστείλετε αυτά τα μηνύματα καθορίζοντας την επιλογή -w, αλλά εάν το κάνετε, δεν θα δείτε τους εναλλακτικούς αριθμούς συσκευών που αναφέρονται στα μηνύματα προειδοποίησης.

ΕΝΑΛΛΑΚΤΙΚΟΙ ΑΡΙΘΜΟΙ ΣΥΣΚΕΥΗΣ

Σε ορισμένες εκδόσεις, όταν το lsof πρέπει να διασπάσει ένα μπλοκ επειδή δεν μπορεί να λάβει πληροφορίες σχετικά με ένα συνδεδεμένο σύστημα αρχείων μέσω των συναρτήσεων lstat(2) και stat(2) του πυρήνα, ή επειδή έχετε καθορίσει την επιλογή -b, το lsof μπορεί να λάβει ορισμένες από τις πληροφορίες που χρειάζεται - τον αριθμό συσκευής και ενδεχομένως τον τύπο του συστήματος αρχείων - από τον πίνακα συνδέσεων του συστήματος. Όταν αυτό είναι δυνατό, το lsof θα αναφέρει τον αριθμό συσκευής που έλαβε. (Μπορείτε να καταστείλετε την αναφορά καθορίζοντας την επιλογή -w.)

Μπορείτε να βοηθήσετε αυτήν τη διαδικασία εάν ο πίνακας συνδέσεων σας υποστηρίζεται με ένα αρχείο /etc/mtab ή /etc/mnttab που περιέχει ένα πεδίο επιλογών, προσθέτοντας ένα πεδίο ``dev=xxxx'' για σημεία σύνδεσης που δεν έχουν ένα στο πεδίο των συμβολοσειρών επιλογών τους. Σημείωση: πρέπει να μπορείτε να επεξεργαστείτε το αρχείο - δηλαδή, ορισμένοι πίνακες συνδέσεων, όπως οι πιο πρόσφατοι Solaris /etc/mnttab ή Linux /proc/mounts, είναι μόνο για ανάγνωση και δεν μπορούν να τροποποιηθούν.

Επίσης, μπορείτε να παρέχετε αριθμούς συσκευών χρησιμοποιώντας τις επιλογές +m και +m m, εφόσον υποστηρίζονται από την έκδοσή σας. Ελέγξτε την έξοδο των επιλογών -h ή -? του lsof για να δείτε εάν είναι διαθέσιμες οι επιλογές +m και +m m.

Το τμήμα ``xxxx'' του πεδίου είναι η δεκαεξαδική τιμή του αριθμού συσκευής του συστήματος αρχείων. (Ανατρέξτε στο πεδίο st_dev της εξόδου των συναρτήσεων lstat(2) και [stat]({filename}../../stat)(2) για τις κατάλληλες τιμές για τα συστήματα αρχείων σας.) Ακολουθεί ένα παράδειγμα από ένα Sun Solaris 2.6 /etc/mnttab για ένα σύστημα αρχείων που συνδέεται απομακρυσμένα μέσω NFS:

nfs  ignore,noquota,dev=2a40001

Υπάρχει ένα πλεονέκτημα στο να έχετε καταχωρήσεις ``dev=xxxx'' στο αρχείο του πίνακα συνδέσεων σας, ειδικά για συστήματα αρχείων που συνδέονται από απομακρυσμένους διακομιστές NFS. Όταν ένας απομακρυσμένος διακομιστής καταρρέει και θέλετε να προσδιορίσετε τους χρήστες του εκτελώντας το lsof σε έναν από τους πελάτες του, το lsof πιθανότατα δεν θα μπορέσει να λάβει έξοδο από τις συναρτήσεις lstat(2) και stat(2) για το σύστημα αρχείων. Εάν μπορεί να λάβει τον αριθμό συσκευής του συστήματος αρχείων από τον πίνακα συνδέσεων, θα μπορέσει να εμφανίσει τα αρχεία που είναι ανοιχτά στον διακομιστή NFS που έχει καταρρεύσει.

Ορισμένες εκδόσεις που δεν χρησιμοποιούν ένα αρχείο ASCII /etc/mtab ή /etc/mnttab για τον πίνακα συνδέσεων ενδέχεται να παρέχουν ακόμη έναν εναλλακτικό αριθμό συσκευής στους εσωτερικούς πίνακες συνδέσεων τους. Αυτό περιλαμβάνει τα AIX, Apple Darwin, FreeBSD, NetBSD, OpenBSD και Tru64 UNIX. Το Lsof γνωρίζει πώς να λάβει τον εναλλακτικό αριθμό συσκευής για αυτές τις εκδόσεις και τον χρησιμοποιεί όταν η προσπάθειά του να εκτελέσει την εντολή lstat(2) ή [stat]({filename}../../stat)(2) στο σύστημα αρχείων είναι αποκλεισμένη.

Εάν δεν είστε σίγουροι ότι η διάλεκτός σας παρέχει εναλλακτικούς αριθμούς συσκευών για τα συστήματα αρχείων από τον πίνακα προσάρτησής της, χρησιμοποιήστε αυτήν την εντολή lsof για να δείτε εάν αναφέρει τυχόν εναλλακτικούς αριθμούς συσκευών:

lsof -b

Αναζητήστε μηνύματα προειδοποίησης σφάλματος στην τυπική έξοδο που ξεκινούν με ``υποθέτοντας "dev=xxxx" από ...''.

CACHE ΟΝΟΜΑΤΩΝ ΠΥΡΗΝΑ

Το lsof είναι σε θέση να εξετάσει την προσωρινή μνήμη ονομάτων του πυρήνα ή να χρησιμοποιήσει άλλες εγκαταστάσεις πυρήνα (π.χ., τη συνάρτηση ADVFS x tag_to_path() στο Tru64 UNIX) σε ορισμένες διαλέκτους για τους περισσότερους τύπους συστημάτων αρχείων, εξαιρουμένων των AFS, και να εξαγάγει πρόσφατα χρησιμοποιημένα στοιχεία ονομάτων διαδρομών από αυτήν. (Οι αναζητήσεις διαδρομών συστήματος αρχείων AFS δεν χρησιμοποιούν την προσωρινή μνήμη ονομάτων του πυρήνα. ορισμένες λειτουργίες του συστήματος αρχείων Solaris VxFS δεν φαίνεται να τη χρησιμοποιούν επίσης.)

Το lsof αναφέρει τις πλήρεις διαδρομές που βρίσκει στη στήλη NAME. Εάν το lsof δεν μπορεί να αναφέρει όλα τα στοιχεία σε μια διαδρομή, αναφέρει στη στήλη NAME το όνομα του συστήματος αρχείων, ακολουθούμενο από ένα κενό, δύο χαρακτήρες -, ένα άλλο κενό και τα ονόματα των στοιχείων που έχει εντοπίσει, διαχωρισμένα με τον χαρακτήρα /.

Όταν το lsof εκτελείται σε επαναλαμβανόμενη λειτουργία - δηλαδή, με την επιλογή -r - ο βαθμός στον οποίο μπορεί να αναφέρει στοιχεία ονομάτων διαδρομών για το ίδιο αρχείο μπορεί να διαφέρει από κύκλο σε κύκλο. Αυτό συμβαίνει επειδή άλλες εκτελούμενες διεργασίες μπορούν να προκαλέσουν την αφαίρεση καταχωρήσεων από την προσωρινή μνήμη ονομάτων του πυρήνα και την αντικατάστασή τους με άλλες.

Η χρήση της προσωρινής μνήμης ονομάτων του πυρήνα από το lsof για τον προσδιορισμό των διαδρομών των αρχείων μπορεί να οδηγήσει στην αναφορά λανθασμένων στοιχείων σε ορισμένες περιπτώσεις. Αυτό μπορεί να συμβεί όταν η προσωρινή μνήμη ονομάτων του πυρήνα χρησιμοποιεί τον αριθμό συσκευής και τον αριθμό κόμβου ως κλειδί (π.χ., SCO OpenServer) και ένα κλειδί σε ένα σύστημα αρχείων που αλλάζει γρήγορα επαναχρησιμοποιείται. Εάν ο πυρήνας της διαλέκτου UNIX δεν καθαρίζει την καταχώρηση της προσωρινής μνήμης ονομάτων για ένα αρχείο όταν αποσυνδέεται, το lsof ενδέχεται να βρει μια αναφορά στην λανθασμένη καταχώρηση στην προσωρινή μνήμη. Τα Συχνές Ερωτήσεις του lsof (Η ενότητα Συχνές Ερωτήσεις δίνει τη θέση της.) περιέχει περισσότερες πληροφορίες σχετικά με αυτήν την κατάσταση.

Το lsof μπορεί να αναφέρει στοιχεία ονομάτων διαδρομών για αυτές τις διαλέκτους:

FreeBSD
HP-UX
Linux
NetBSD
SCO OpenServer
SCO|Caldera UnixWare
Solaris
Tru64 UNIX

Το lsof δεν μπορεί να αναφέρει στοιχεία ονομάτων διαδρομών για αυτές τις διαλέκτους:

AIX
OpenBSD

Εάν θέλετε να μάθετε γιατί το lsof δεν μπορεί να αναφέρει στοιχεία ονομάτων διαδρομών για ορισμένες διαλέκτους, δείτε τα Συχνές Ερωτήσεις του lsof (Η ενότητα Συχνές Ερωτήσεις δίνει τη θέση της).

ΑΡΧΕΙΟ ΠΡΟΣΩΡΙΝΗΣ ΜΝΗΜΗΣ ΣΥΣΚΕΥΗΣ

Η εξέταση όλων των μελών του δέντρου κόμβων /dev (ή /devices) με τις συναρτήσεις stat(2) μπορεί να είναι χρονοβόρα. Επιπλέον, οι πληροφορίες που χρειάζεται το lsof - αριθμός συσκευής, αριθμός i-node και διαδρομή - σπάνια αλλάζουν.

Ως εκ τούτου, το lsof διατηρεί συνήθως ένα αρχείο κειμένου ASCII με πληροφορίες που έχουν προσωρινά αποθηκευτεί από το /dev (ή /devices) (εξαίρεση: το lsof που βασίζεται στο /proc για το Linux, όπου δεν είναι απαραίτητο). Ο τοπικός διαχειριστής συστήματος που δημιουργεί το lsof μπορεί να ελέγξει τον τρόπο με τον οποίο σχηματίζεται η διαδρομή του αρχείου προσωρινής μνήμης συσκευής, επιλέγοντας από αυτές τις επιλογές:


Διαδρομή από την επιλογή -D· Διαδρομή από μια μεταβλητή περιβάλλοντος· Διαδρομή σε επίπεδο συστήματος· Προσωπική διαδρομή (η προεπιλογή)· Προσωπική διαδρομή, τροποποιημένη από μια μεταβλητή περιβάλλοντος.

Ελέγξτε την έξοδο των επιλογών βοήθειας -h, -D? ή -? για την τρέχουσα κατάσταση της υποστήριξης της προσωρινής μνήμης συσκευών. Η έξοδος της βοήθειας εμφανίζει την προεπιλεγμένη διαδρομή του αρχείου προσωρινής μνήμης συσκευών σε λειτουργία ανάγνωσης, η οποία ισχύει για την τρέχουσα εκτέλεση του lsof. Η έξοδος της επιλογής -D? εμφανίζει τις διαδρομές αρχείων προσωρινής μνήμης συσκευών μόνο για ανάγνωση και για εγγραφή, τα ονόματα τυχόν σχετικών μεταβλητών περιβάλλοντος και τη μορφή της προσωπικής διαδρομής προσωρινής μνήμης συσκευών.

Το lsof μπορεί να ανιχνεύσει εάν το τρέχον αρχείο προσωρινής μνήμης συσκευών έχει τροποποιηθεί κατά λάθος ή κακόβουλα, μέσω ελέγχων ακεραιότητας, συμπεριλαμβανομένης της υπολογισμού και της επαλήθευσης ενός δεκαεξαψήφιου αθροίσματος Κυκλικής Πλεοναστικής Ελέγχου (CRC) στο περιεχόμενο του αρχείου. Όταν το lsof διαπιστώνει ότι κάτι δεν πάει καλά με το αρχείο, εκδίδει μια προειδοποίηση και προσπαθεί να αφαιρέσει το τρέχον αρχείο προσωρινής μνήμης και να δημιουργήσει ένα νέο αντίγραφο, αλλά μόνο σε μια διαδρομή στην οποία η διαδικασία μπορεί να κάνει νόμιμα εγγραφές.

Η διαδρομή από την οποία μια διαδικασία lsof μπορεί να προσπαθήσει να διαβάσει ένα αρχείο προσωρινής μνήμης συσκευών μπορεί να μην είναι η ίδια με τη διαδρομή στην οποία μπορεί νόμιμα να κάνει εγγραφές. Επομένως, όταν το lsof διαπιστώνει ότι πρέπει να ενημερώσει το αρχείο προσωρινής μνήμης συσκευών, μπορεί να επιλέξει μια διαφορετική διαδρομή για την εγγραφή του από τη διαδρομή από την οποία διάβασε μια εσφαλμένη ή ξεπερασμένη έκδοση.

Εάν είναι διαθέσιμη, η επιλογή -Dr θα αποτρέψει την εγγραφή ενός νέου αρχείου προσωρινής μνήμης συσκευών. (Είναι πάντα διαθέσιμη όταν καθορίζεται χωρίς όρισμα ονόματος διαδρομής.)

Όταν προστίθεται μια νέα συσκευή στο σύστημα, το αρχείο προσωρινής μνήμης συσκευών ενδέχεται να χρειαστεί να δημιουργηθεί ξανά. Επειδή το lsof συγκρίνει την τιμή mtime του αρχείου προσωρινής μνήμης συσκευών με τις τιμές mtime και ctime του καταλόγου /dev (ή /devices), συνήθως ανιχνεύει ότι έχει προστεθεί μια νέα συσκευή. Σε αυτήν την περίπτωση, το lsof εκδίδει ένα μήνυμα προειδοποίησης και προσπαθεί να ανακατασκευάσει το αρχείο προσωρινής μνήμης συσκευών.

Όποτε το lsof εγγράφει ένα αρχείο προσωρινής μνήμης συσκευών, ορίζει την ιδιοκτησία του στο πραγματικό UID της εκτελούμενης διαδικασίας και τις άδειές του σε 0600, περιορίζοντας έτσι την ανάγνωση και την εγγραφή του αρχείου μόνο στον ιδιοκτήτη του.

ΑΔΕΙΕΣ LSOF ΠΟΥ ΕΠΙΡΡΕΑΖΟΥΝ ΤΗΝ ΠΡΟΣΒΑΣΗ ΣΤΟ ΑΡΧΕΙΟ ΠΡΟΣΩΡΙΝΗΣ ΜΝΗΜΗΣ ΣΥΣΚΕΥΗΣ

Δύο άδειες του εκτελέσιμου αρχείου lsof επηρεάζουν την ικανότητά του να έχει πρόσβαση στα αρχεία προσωρινής μνήμης συσκευών. Οι άδειες ορίζονται από τον τοπικό διαχειριστή συστήματος κατά την εγκατάσταση του lsof.

Η πρώτη και πιο σπάνια άδεια είναι η setuid-root. Ενεργοποιείται όταν εκτελείται το lsof. Τότε, το αποτελεσματικό UID είναι root, ενώ το πραγματικό UID (αυτό του συνδεδεμένου χρήστη) δεν είναι. Η διανομή του lsof συνιστά να χρησιμοποιούνται εκδόσεις με την ιδιότητα setuid-root για τις ακόλουθες εκδόσεις:

HP-UX 11.11 και 11.23

Linux

Η δεύτερη και πιο κοινή άδεια είναι η setgid. Ενεργοποιείται όταν το αποτελεσματικό αναγνωριστικό ομάδας (GID) της διαδικασίας lsof ορίζεται σε ένα που μπορεί να έχει πρόσβαση στις συσκευές μνήμης πυρήνα - π.χ., kmem'',sys'' ή ``system''.


Μια διαδικασία lsof που έχει οριστεί με δικαιώματα setgid συνήθως εγκαταλείπει αυτά τα δικαιώματα αφού έχει αποκτήσει πρόσβαση στις συσκευές μνήμης του πυρήνα. Όταν το κάνει αυτό, το lsof μπορεί να επιτρέψει πιο ελαστικούς σχηματισμούς διαδρομής προσωρινής αποθήκευσης συσκευών. Η διανομή lsof συνιστά ότι οι εκδόσεις για αυτές τις διαλέκτους θα πρέπει να εκτελούνται με δικαιώματα setgid και να επιτρέπεται να εγκαταλείπουν τα δικαιώματα setgid.

AIX 5.[12] και 5.3-ML1
Apple Darwin 7.x Power Macintosh systems
FreeBSD 4.x, 4.1x, 5.x και [6789].x για συστήματα που βασίζονται σε x86
FreeBSD 5.x, [6789].x και 1[012].8 για Alpha, AMD64 και Sparc64 based systems
HP-UX 11.00
NetBSD 1.[456], 2.x και 3.x για Alpha, x86 και SPARC-based systems
OpenBSD 2.[89] και 3.[0-9] για x86-based systems
SCO OpenServer Release 5.0.6 για x86-based systems
SCO|Caldera UnixWare 7.1.4 για x86-based systems
Solaris 2.6, 8, 9 και 10
Tru64 UNIX 5.1

(Σημείωση: το lsof για το AIX 5L και νεότερες εκδόσεις χρειάζεται δικαιώματα setuid-root εάν χρησιμοποιείται η επιλογή -X.)

Το Lsof για αυτές τις διαλέκτους δεν υποστηρίζει μια προσωρινή αποθήκευση συσκευών, επομένως τα δικαιώματα που δίνονται στο εκτελέσιμο αρχείο δεν εφαρμόζονται στο αρχείο προσωρινής αποθήκευσης συσκευών.

Linux

ΔΙΑΔΡΟΜΗ ΑΡΧΕΙΟΥ ΠΡΟΣΩΡΙΝΗΣ ΑΠΟΘΗΚΕΥΣΗΣ ΣΥΣΚΕΥΗΣ ΑΠΟ ΤΗΝ ΕΠΙΛΟΓΗ -D

Η επιλογή -D παρέχει περιορισμένα μέσα για τον καθορισμό της διαδρομής του αρχείου προσωρινής αποθήκευσης συσκευής. Η συνάρτησή της ? θα αναφέρει τις διαδρομές αρχείων προσωρινής αποθήκευσης συσκευών που είναι μόνο για ανάγνωση και αυτές που μπορούν να γραφτούν από το lsof.

Όταν οι συναρτήσεις -D b, r και u είναι διαθέσιμες, μπορείτε να τις χρησιμοποιήσετε για να ζητήσετε να δημιουργηθεί το αρχείο προσωρινής αποθήκευσης σε μια συγκεκριμένη τοποθεσία (b[path]); να διαβαστεί αλλά να μην επαναδημιουργηθεί (r[path]); ή να διαβαστεί και να επαναδημιουργηθεί (u[path]). Οι συναρτήσεις b, r και u περιορίζονται υπό ορισμένες συνθήκες. Περιορίζονται όταν η διαδικασία lsof εκτελείται με δικαιώματα setuid-root. Η διαδρομή που καθορίζεται με τη συνάρτηση r είναι πάντα μόνο για ανάγνωση, ακόμη και όταν είναι διαθέσιμη.

Οι συναρτήσεις b, r και u περιορίζονται επίσης όταν η διαδικασία lsof εκτελείται με δικαιώματα setgid και το lsof δεν εγκαταλείπει τα δικαιώματα setgid. (Δείτε την ενότητα ΔΙΚΑΙΩΜΑΤΑ LSOF ΠΟΥ ΕΠΙΡΡΕΑΖΟΥΝ ΤΗΝ ΠΡΟΣΒΑΣΗ ΣΤΟ ΑΡΧΕΙΟ ΠΡΟΣΩΡΙΝΗΣ ΑΠΟΘΗΚΕΥΣΗΣ ΣΥΣΚΕΥΗΣ για μια λίστα με τις υλοποιήσεις που κανονικά δεν εγκαταλείπουν τα δικαιώματά τους setgid.)

Μια περαιτέρω συνάρτηση -D, i (για ignore), είναι πάντα διαθέσιμη.

Όταν είναι διαθέσιμη, η συνάρτηση b λέει στο lsof να διαβάσει πληροφορίες συσκευών από τον πυρήνα με τη συνάρτηση stat(2) και να δημιουργήσει ένα αρχείο προσωρινής αποθήκευσης συσκευών στην υποδεικνυόμενη διαδρομή.

Όταν είναι διαθέσιμη, η συνάρτηση r λέει στο lsof να διαβάσει το αρχείο προσωρινής αποθήκευσης συσκευών, αλλά να μην το ενημερώσει. Όταν μια παράμετρος διαδρομής συνοδεύει την επιλογή -Dr, καθορίζει τη διαδρομή του αρχείου προσωρινής αποθήκευσης συσκευής. Η συνάρτηση r είναι πάντα διαθέσιμη όταν καθορίζεται χωρίς παράμετρο διαδρομής. Εάν το lsof δεν εκτελείται με δικαιώματα setuid-root και εγκαταλείπει τα δικαιώματά του setgid, μια παράμετρος διαδρομής μπορεί να συνοδεύει τη συνάρτηση r.

Όταν είναι διαθέσιμη, η συνάρτηση u λέει στο lsof να επιχειρήσει να διαβάσει και να χρησιμοποιήσει το αρχείο προσωρινής αποθήκευσης συσκευών. Εάν δεν μπορεί να διαβάσει το αρχείο ή εάν διαπιστώσει ότι το περιεχόμενο του αρχείου είναι εσφαλμένο ή ξεπερασμένο, θα διαβάσει πληροφορίες από τον πυρήνα και θα προσπαθήσει να γράψει μια ενημερωμένη έκδοση του αρχείου προσωρινής αποθήκευσης συσκευών, αλλά μόνο σε μια διαδρομή που θεωρεί νόμιμη για τις πραγματικές και αποτελεσματικές ταυτότητες χρήστη της διαδικασίας lsof.


ΔΙΑΔΡΟΜΗ ΚΑΧΕ ΜΕΛΕΤΩΝ ΑΠΟ ΜΙΑ ΠΕΡΙΒΑΛΛΟΝΤΙΚΗ ΜΕΤΑΒΛΗΤΗ

Η δεύτερη επιλογή του Lsof για το αρχείο κρυφής μνήμης συσκευών είναι το περιεχόμενο της περιβαλλοντικής μεταβλητής LSOFDEVCACHE. Αποφεύγει αυτήν την επιλογή εάν η διαδικασία lsof έχει οριστεί ως setuid-root ή το πραγματικό UID της διαδικασίας είναι root.

Επιπλέον περιορισμός ισχύει για μια διαδρομή αρχείου κρυφής μνήμης συσκευών που λαμβάνεται από την περιβαλλοντική μεταβλητή LSOFDEVCACHE: το lsof δεν θα γράψει ένα αρχείο κρυφής μνήμης συσκευών στη διαδρομή εάν η διαδικασία lsof δεν παραδώσει το δικαίωμα setgid. (Δείτε την ενότητα ΠΕΡΙΟΡΙΣΜΟΙ ΠΟΥ ΕΠΙΡΡΕΑΖΟΥΝ ΤΗΝ ΠΡΟΣΒΑΣΗ ΣΤΟ ΑΡΧΕΙΟ ΚΑΧΕ ΜΕΛΕΤΩΝ ΣΥΣΚΕΥΩΝ για πληροφορίες σχετικά με τις υλοποιήσεις που δεν παραδίδουν το δικαίωμα setgid).

Ο τοπικός διαχειριστής συστήματος μπορεί να απενεργοποιήσει τη χρήση της περιβαλλοντικής μεταβλητής LSOFDEVCACHE ή να αλλάξει το όνομά της κατά τη δημιουργία του lsof. Ανατρέξτε στην έξοδο του -D? για το όνομα της περιβαλλοντικής μεταβλητής.

ΣΥΣΤΗΜΙΚΗ ΔΙΑΔΡΟΜΗ ΚΑΧΕ ΜΕΛΕΤΩΝ ΣΥΣΚΕΥΩΝ

Ο τοπικός διαχειριστής συστήματος μπορεί να επιλέξει να έχει ένα συστημικό αρχείο κρυφής μνήμης συσκευών κατά τη δημιουργία του lsof. Αυτό το αρχείο θα δημιουργείται συνήθως από μια ειδική διαδικασία διαχείρισης συστήματος κατά την εκκίνηση του συστήματος ή όταν αλλάζει το περιεχόμενο του /dev ή /devices. Εάν οριστεί, είναι η τρίτη επιλογή διαδρομής αρχείου κρυφής μνήμης συσκευών του lsof.

Μπορείτε να διαπιστώσετε ότι ένα συστημικό αρχείο κρυφής μνήμης συσκευών είναι σε ισχύ για την τοπική σας εγκατάσταση εξετάζοντας την έξοδο της επιλογής βοήθειας του lsof, δηλαδή την έξοδο από την επιλογή -h ή -?.

Το Lsof δεν θα γράφει ποτέ στο συστημικό αρχείο κρυφής μνήμης συσκευών από προεπιλογή. Πρέπει να οριστεί ρητά με μια συνάρτηση -D σε μια διαδικασία που ανήκει στον χρήστη root. Μόλις γραφτεί το αρχείο, η διαδικασία πρέπει να αλλάξει τις λειτουργίες αδειών του σε 0644 (ανάγνωση και εγγραφή του κατόχου, ανάγνωση ομάδας και ανάγνωση άλλων).

ΠΡΟΣΩΠΙΚΗ ΔΙΑΔΡΟΜΗ ΚΑΧΕ ΜΕΛΕΤΩΝ ΣΥΣΚΕΥΩΝ (ΠΡΟΕΠΙΛΕΓΜΕΝΗ)

Η προεπιλεγμένη διαδρομή αρχείου κρυφής μνήμης συσκευών της διανομής lsof είναι αυτή που είναι καταχωρημένη στον κατάλογο του πραγματικού UID που εκτελεί το lsof. Στον κατάλογο προστίθεται ένα δεύτερο στοιχείο διαδρομής της μορφής .lsof_όνομα_κεντρικού_υπολογιστή.

Αυτή είναι η τέταρτη επιλογή διαδρομής αρχείου κρυφής μνήμης συσκευών του lsof και είναι συνήθως η προεπιλογή. Εάν έχει οριστεί μια συστημική διαδρομή αρχείου κρυφής μνήμης συσκευών κατά τη δημιουργία του lsof, αυτή η τέταρτη επιλογή θα εφαρμοστεί όταν το lsof δεν μπορεί να βρει το συστημικό αρχείο κρυφής μνήμης συσκευών. Αυτός είναι ο μόνος τρόπος με τον οποίο το lsof χρησιμοποιεί δύο διαδρομές κατά την ανάγνωση του αρχείου κρυφής μνήμης συσκευών.

Το τμήμα του ονόματος κεντρικού υπολογιστή είναι το βασικό όνομα του κεντρικού υπολογιστή που εκτελεί, όπως επιστρέφεται από τη συνάρτηση gethostname(2). Το βασικό όνομα ορίζεται ως οι χαρακτήρες που προηγούνται της πρώτης τελείας . στην έξοδο της συνάρτησης gethostname(2) ή ολόκληρη η έξοδος της συνάρτησης gethostname(2) εάν δεν περιέχει ..

Το αρχείο κρυφής μνήμης συσκευών ανήκει στο ID χρήστη και είναι αναγνώσιμο και εγγράψιμο μόνο από το ID χρήστη, δηλαδή οι λειτουργίες του είναι 0600. Κάθε ξεχωριστό πραγματικό ID χρήστη σε έναν δεδομένο κεντρικό υπολογιστή που εκτελεί το lsof έχει ένα ξεχωριστό αρχείο κρυφής μνήμης συσκευών. Το τμήμα του ονόματος κεντρικού υπολογιστή της διαδρομής διακρίνει τα αρχεία κρυφής μνήμης συσκευών σε έναν κεντρικό υπολογιστή στο οποίο έχουν γίνει mount οι κατάλογοι, από διάφορους κεντρικούς υπολογιστές.


Η διαδρομή του αρχείου προσωπικής προσωρινής μνήμης συσκευής που δημιουργείται με αυτήν τη μέθοδο αντιπροσωπεύει ένα αρχείο προσωρινής μνήμης συσκευής που το lsof θα επιχειρήσει να διαβάσει και θα επιχειρήσει να γράψει εάν δεν υπάρχει ή εάν το περιεχόμενό του είναι εσφαλμένο ή ξεπερασμένο.

Η επιλογή -Dr χωρίς όρισμα διαδρομής θα αποτρέψει την εγγραφή ενός νέου αρχείου προσωρινής μνήμης συσκευής.

Η επιλογή -D? θα εμφανίσει την προδιαγραφή μορφής για τη δημιουργία του αρχείου προσωπικής προσωρινής μνήμης συσκευής. Οι μετατροπές που χρησιμοποιούνται στην προδιαγραφή μορφής περιγράφονται στο αρχείο 00DCACHE της διανομής του lsof.

ΤΡΟΠΟΠΟΙΗΜΕΝΗ ΔΙΑΔΡΟΜΗ ΠΡΟΣΩΠΙΚΗΣ ΠΡΟΣΩΡΙΝΗΣ ΜΝΗΜΗΣ ΣΥΣΚΕΥΗΣ

Εάν αυτή η επιλογή οριστεί από τον τοπικό διαχειριστή συστήματος κατά τη δημιουργία του lsof, το περιεχόμενο της μεταβλητής περιβάλλοντος LSOFPERSDCPATH μπορεί να χρησιμοποιηθεί για την προσθήκη ενός στοιχείου στη διαδρομή του αρχείου προσωπικής προσωρινής μνήμης συσκευής.

Το περιεχόμενο της μεταβλητής LSOFPERSDCPATH εισάγεται στη διαδρομή στο σημείο που επισημαίνεται από τον τοπικό διαχειριστή συστήματος με τη μετατροπή %p στην προδιαγραφή μορφής HASPERSDC του αρχείου κεφαλίδας machine.h της έκδοσης. (Τοποθετείται ακριβώς μετά τον κατάλογο αρχικής σελίδας στην προεπιλεγμένη διανομή του lsof.)

Έτσι, για παράδειγμα, εάν το LSOFPERSDCPATH περιέχει LSOF, ο κατάλογος αρχικής σελίδας είναι /Homes/abe, το όνομα κεντρικού υπολογιστή είναι lsof.itap.purdue.edu και η μορφή HASPERSDC είναι η προεπιλεγμένη (%h/%p.lsof_%L), η τροποποιημένη διαδρομή του αρχείου προσωπικής προσωρινής μνήμης συσκευής είναι:

/Homes/abe/LSOF/.lsof_vic

Η μεταβλητή περιβάλλοντος LSOFPERSDCPATH αγνοείται όταν η διαδικασία lsof έχει οριστεί ως setuid-root ή όταν το πραγματικό UID της διαδικασίας είναι root.

Το lsof δεν θα γράψει σε μια τροποποιημένη διαδρομή αρχείου προσωπικής προσωρινής μνήμης συσκευής εάν η διαδικασία lsof δεν παραδώσει την άδεια setgid. (Δείτε την ενότητα ΠΕΡΙΟΡΙΣΜΟΙ ΠΟΥ ΕΠΙΡΡΕΑΖΟΥΝ ΤΗΝ ΠΡΟΣΒΑΣΗ ΣΤΟ ΑΡΧΕΙΟ ΠΡΟΣΩΡΙΝΗΣ ΜΝΗΜΗΣ ΣΥΣΚΕΥΗΣ για μια λίστα υλοποιήσεων που συνήθως δεν παραδίδουν την άδεια setgid τους.)

Εάν, για παράδειγμα, θέλετε να δημιουργήσετε έναν υποκατάλογο διαδρομών αρχείου προσωπικής προσωρινής μνήμης συσκευής χρησιμοποιώντας τη μεταβλητή περιβάλλοντος LSOFPERSDCPATH για να του δώσετε όνομα και το lsof δεν παραδίδει την άδεια setgid του, θα πρέπει να επιτρέψετε στο lsof να δημιουργήσει αρχεία προσωρινής μνήμης συσκευής στην τυπική προσωπική διαδρομή και να τα μετακινήσετε στον υποκατάλογό σας με εντολές shell.

Ο τοπικός διαχειριστής συστήματος μπορεί: να απενεργοποιήσει αυτήν την επιλογή κατά τη δημιουργία του lsof. να αλλάξει το όνομα της μεταβλητής περιβάλλοντος από LSOFPERSDCPATH σε κάτι άλλο. να αλλάξει τη μορφή HASPERSDC για να συμπεριλάβει το στοιχείο προσωπικής διαδρομής σε άλλο σημείο. ή να εξαιρέσει εντελώς το στοιχείο προσωπικής διαδρομής. Ανατρέξτε στην έξοδο της επιλογής -D? για το όνομα της μεταβλητής περιβάλλοντος και την προδιαγραφή μορφής HASPERSDC.

ΔΙΑΓΝΩΣΤΙΚΑ

Τα σφάλματα εντοπίζονται με μηνύματα στο τυπικό αρχείο σφάλματος.

Το Lsof επιστρέφει ένα (1) εάν ανιχνευθεί οποιοδήποτε σφάλμα, συμπεριλαμβανομένης της αποτυχίας εντοπισμού ονομάτων εντολών, ονομάτων αρχείων, διευθύνσεων διαδικτύου ή αρχείων, ονομάτων σύνδεσης, αρχείων NFS, PID, PGID ή UID για τα οποία ζητήθηκε να καταγραφούν. Εάν έχει καθοριστεί η επιλογή -V, το lsof θα υποδείξει τα στοιχεία αναζήτησης στα οποία απέτυχε να καταγράψει. Εάν έχει καθοριστεί η επιλογή -Q, το lsof θα αγνοήσει τυχόν αποτυχίες στοιχείων αναζήτησης και θα επιστρέψει σφάλμα μόνο εάν συνέβη κάτι ασυνήθιστο και μη ανακτήσιμο.


Επιστρέφει μηδέν (0) εάν δεν εντοπίστηκαν σφάλματα και είτε καθορίστηκε η επιλογή -Q είτε μπόρεσε να καταγράψει ορισμένες πληροφορίες σχετικά με όλα τα καθορισμένα ορίσματα αναζήτησης.

Όταν το lsof δεν μπορεί να αποκτήσει πρόσβαση στο /dev (ή /devices) ή σε έναν από τους υποκαταλόγους του, ή να λάβει πληροφορίες για ένα αρχείο σε αυτά με το stat(2), εκδίδει ένα μήνυμα προειδοποίησης και συνεχίζει. Το γεγονός ότι το lsof θα εκδίδει μηνύματα προειδοποίησης σχετικά με μη προσβάσιμα αρχεία στο /dev (ή /devices) υποδεικνύεται στην έξοδο βοήθειάς του - που ζητείται με τις επιλογές -h ή >B -? - με το μήνυμα:

Ενεργοποιημένες προειδοποιήσεις μη προσβάσιμου /dev.

Το μήνυμα προειδοποίησης μπορεί να κατασταλεί με την επιλογή -w. Μπορεί επίσης να έχει κατασταλεί από τον διαχειριστή του συστήματος κατά τη μεταγλώττιση του lsof με τη ρύθμιση της ορισμού WARNDEVACCESS. Σε αυτήν την περίπτωση, η έξοδος από τις επιλογές βοήθειας θα περιλαμβάνει το μήνυμα:

Απενεργοποιημένες προειδοποιήσεις μη προσβάσιμου /dev.

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

ΠΑΡΑΔΕΙΓΜΑΤΑ

Για ένα πιο εκτεταμένο σύνολο παραδειγμάτων, τεκμηριωμένων πιο διεξοδικά, δείτε το αρχείο 00QUICKSTART της διανομής του lsof.

Για να καταγράψετε όλα τα ανοιχτά αρχεία, χρησιμοποιήστε:

lsof

Για να καταγράψετε όλα τα ανοιχτά αρχεία Internet, x.25 (HP-UX) και UNIX domain, χρησιμοποιήστε:

lsof -i -U

Για να καταγράψετε όλα τα ανοιχτά αρχεία δικτύου IPv4 που χρησιμοποιούνται από τη διαδικασία με PID 1234, χρησιμοποιήστε:

lsof -i 4 -a -p 1234

Εάν είναι αποδεκτό το PID 1234 να μην υπάρχει ή το PID 1234 να μην έχει ανοιχτά αρχεία δικτύου IPv4, προσθέστε το -Q:

lsof -Q -i 4 -a -p 1234

Υποθέτοντας ότι η διάλεκτος UNIX υποστηρίζει το IPv6, για να καταγράψετε μόνο τα ανοιχτά αρχεία δικτύου IPv6, χρησιμοποιήστε:

lsof -i 6

Για να καταγράψετε όλα τα αρχεία που χρησιμοποιούν οποιοδήποτε πρωτόκολλο στις θύρες 513, 514 ή 515 του κεντρικού υπολογιστή wonderland.cc.purdue.edu, χρησιμοποιήστε:

lsof -i @wonderland.cc.purdue.edu:513-515

Για να καταγράψετε όλα τα αρχεία που χρησιμοποιούν οποιοδήποτε πρωτόκολλο σε οποιαδήποτε θύρα του mace.cc.purdue.edu (το cc.purdue.edu είναι ο προεπιλεγμένος τομέας), χρησιμοποιήστε:

lsof -i @mace

Για να καταγράψετε όλα τα ανοιχτά αρχεία για το όνομα σύνδεσης ``abe'', ή το ID χρήστη 1234, ή τη διαδικασία 456, ή τη διαδικασία 123, ή τη διαδικασία 789, χρησιμοποιήστε:

lsof -p 456,123,789 -u 1234,abe

Για να καταγράψετε όλα τα ανοιχτά αρχεία στη συσκευή /dev/hd4, χρησιμοποιήστε:

lsof /dev/hd4

Για να βρείτε τη διαδικασία που έχει ανοιχτό το /u/abe/foo χωρίς να ανησυχείτε για το αν δεν υπάρχει ή αν δεν έχει ανοιχτά αρχεία δικτύου IPv4, χρησιμοποιήστε:

lsof -Q /u/abe/foo

Για να κάνετε μια ενέργεια μόνο εάν μια διαδικασία έχει ανοιχτό το /u/abe/foo, χρησιμοποιήστε:

lsof /u/abe/foo echo "still in use"

Για να στείλετε ένα σήμα SIGHUP στις διαδικασίες που έχουν ανοιχτό το /u/abe/bar, χρησιμοποιήστε:

kill -HUP `lsof -t /u/abe/bar`

Για να βρείτε οποιοδήποτε ανοιχτό αρχείο, συμπεριλαμβανομένου ενός ανοιχτού αρχείου UNIX domain socket, με το όνομα /dev/log, χρησιμοποιήστε:

lsof /dev/log

Για να βρείτε τις διαδικασίες με ανοιχτά αρχεία στο σύστημα αρχείων NFS με το όνομα /nfs/mount/point του οποίου ο διακομιστής είναι απρόσιτος, και υποθέτοντας ότι ο πίνακας συστήματός σας παρέχει τον αριθμό συσκευής για το /nfs/mount/point, χρησιμοποιήστε:


lsof -b /nfs/mount/point

Για να εκτελέσετε την προηγούμενη αναζήτηση καταστέλλοντας τα μηνύματα προειδοποίησης, χρησιμοποιήστε:

lsof -bw /nfs/mount/point

Για να αγνοήσετε το αρχείο της προσωρινής μνήμης της συσκευής, χρησιμοποιήστε:

lsof -Di

Για να λάβετε την έξοδο των πεδίων PID και όνομα εντολής για κάθε διαδικασία, τον περιγραφέα αρχείου, τον αριθμό συσκευής αρχείου και τον αριθμό inode αρχείου για κάθε αρχείο κάθε διαδικασίας, χρησιμοποιήστε:

lsof -FpcfDi

Για να καταγράψετε τα αρχεία στους περιγραφείς 1 και 3 κάθε διαδικασίας που εκτελεί την εντολή lsof για το αναγνωριστικό σύνδεσης abe κάθε 10 δευτερόλεπτα, χρησιμοποιήστε:

lsof -c lsof -a -d 1 -d 3 -u abe -r10

Για να καταγράψετε τον τρέχοντα κατάλογο εργασίας των διαδικασιών που εκτελούν μια εντολή η οποία είναι ακριβώς τέσσερα χαρακτήρες και έχει ένα 'o' ή 'O' στον τρίτο χαρακτήρα, χρησιμοποιήστε αυτή τη μορφή κανονικής έκφρασης της επιλογής -c:

lsof -c /^..o.$/i -a -d cwd

Για να βρείτε ένα αρχείο socket έκδοσης IP 4 με βάση τη σχετική αριθμητική διεύθυνση σε μορφή δεκαδικής τελείας, χρησιμοποιήστε:

lsof [email protected]

Για να βρείτε ένα αρχείο socket έκδοσης IP 6 (όταν η διάλεκτος UNIX υποστηρίζει το IPv6) με βάση τη σχετική αριθμητική διεύθυνση σε μορφή εγγύστροφης άνω τελείας, χρησιμοποιήστε:

lsof -i@[0:1:2:3:4:5:6:7]

Για να βρείτε ένα αρχείο socket έκδοσης IP 6 (όταν η διάλεκτος UNIX υποστηρίζει το IPv6) με βάση μια σχετική αριθμητική διεύθυνση σε μορφή εγγύστροφης άνω τελείας που έχει μια σειρά από μηδενικά, π.χ. η διεύθυνση βρόχου, χρησιμοποιήστε:

lsof -i@[::1]

Για να λάβετε ένα δείκτη λειτουργίας επανάληψης που περιέχει την τρέχουσα ώρα, χρησιμοποιήστε:

lsof -rm====%T====

Για να προσθέσετε κενά στην προηγούμενη γραμμή δείκτη, χρησιμοποιήστε:

lsof -r "m==== %T ===="

ΣΦΑΛΜΑΤΑ

Επειδή το lsof διαβάζει τη μνήμη του πυρήνα στην αναζήτησή του για ανοιχτά αρχεία, οι γρήγορες αλλαγές στη μνήμη του πυρήνα μπορεί να παράγουν απρόβλεπτα αποτελέσματα.

Όταν ένα αρχείο έχει πολλαπλά κλειδώματα αρχείων, ο χαρακτήρας κατάστασης κλειδώματος (που ακολουθεί τον περιγραφέα αρχείου) προέρχεται από μια δοκιμή της πρώτης δομής κλειδώματος, και όχι από οποιονδήποτε συνδυασμό των μεμονωμένων δομών κλειδώματος που θα μπορούσαν να περιγραφούν από πολλαπλές δομές κλειδώματος.

Το Lsof δεν μπορεί να αναζητήσει αρχεία με περιοριστικές άδειες πρόσβασης με όνομα, εκτός εάν είναι εγκατεστημένο με δικαιώματα set-UID ρίζας. Διαφορετικά, περιορίζεται στην αναζήτηση αρχείων στα οποία ο χρήστης του ή η ομάδα set-GID (εάν υπάρχει) έχουν άδεια πρόσβασης.

Η εμφάνιση της διεύθυνσης προορισμού ενός raw socket (π.χ. για ping) εξαρτάται από το λειτουργικό σύστημα UNIX. Ορισμένες διάλεκτοι αποθηκεύουν τη διεύθυνση προορισμού στο μπλοκ ελέγχου πρωτοκόλλου του raw socket, ενώ άλλες δεν το κάνουν.

Το Lsof δεν μπορεί πάντα να αναπαραστήσει τους αριθμούς συσκευών Solaris με τον ίδιο τρόπο που το ls(1) το κάνει. Για παράδειγμα, οι αριθμοί κύριας και δευτερεύουσας συσκευής που οι συναρτήσεις lstat(2) και stat(2) αναφέρουν για τον κατάλογο στον οποίο είναι τοποθετημένα τα αρχεία CD-ROM (συνήθως /cdrom) δεν είναι οι ίδιοι με αυτούς που αναφέρει για τη συσκευή στην οποία είναι τοποθετημένα τα αρχεία CD-ROM (συνήθως /dev/sr0). (Το Lsof αναφέρει τους αριθμούς καταλόγου.)

Η υποστήριξη για τα συστήματα αρχείων /proc είναι διαθέσιμη μόνο για τις διάλεκτους BSD και Tru64 UNIX, Linux και τις διάλεκτους που προέρχονται από το SYSV R4 - π.χ. FreeBSD, NetBSD, OpenBSD, Solaris, UnixWare.

Ορισμένα στοιχεία του αρχείου /proc - αριθμός συσκευής, αριθμός inode και μέγεθος αρχείου - δεν είναι διαθέσιμα σε ορισμένες διάλεκτους. Η αναζήτηση αρχείων σε ένα σύστημα αρχείων /proc μπορεί να απαιτεί να καθοριστεί το πλήρες όνομα διαδρομής.


Δεν εμφανίζονται περιγραφείς αρχείων τύπου txt για τις διαδικασίες Linux. Όλες οι καταχωρήσεις για αρχεία διαφορετικά από τον τρέχοντα κατάλογο εργασίας, τον ριζικό κατάλογο και τους αριθμητικούς περιγραφείς αρχείων επισημαίνονται ως περιγραφείς μνήμης (mem descriptors).

Το Lsof δεν μπορεί να αναζητήσει ονομαστικές σωληνώσεις (named pipes) του Tru64 UNIX κατά όνομα, επειδή η υλοποίηση του kernel της συνάρτησης lstat(2) επιστρέφει έναν ακατάλληλο αριθμό συσκευής για μια ονομαστική σωλήνωση.

Το Lsof δεν μπορεί να αναφέρει πλήρως ή σωστά τις κλειδαριές (locks) στο HP-UX 9.01, 10.20 και 11.00, λόγω ανεπαρκούς πρόσβασης στα δεδομένα του kernel ή σφαλμάτων στα δεδομένα του kernel. Ανατρέξτε στην ενότητα Συχνές Ερωτήσεις (FAQ) του Lsof (η ενότητα FAQ δίνει την τοποθεσία της) για λεπτομέρειες.

Ο τύπος αρχείου AIX SMT είναι κατασκευασμένος. Δημιουργείται για δομές αρχείων των οποίων ο τύπος (15) δεν ορίζεται στην κεφαλίδα /usr/include/sys/file.h του AIX. Ένας τρόπος για να δημιουργηθούν τέτοιες δομές αρχείων είναι να εκτελεστούν προγράμματα-πελάτες X με τη μεταβλητή DISPLAY να έχει οριστεί σε ``:0.0''.

Η επιλογή +|-f[cfn] δεν υποστηρίζεται στο Lsof που βασίζεται στο /proc για το Linux, επειδή δεν διαβάζει τις δομές του kernel από τη μνήμη του kernel.

ΠΕΡΙΒΑΛΛΟΝ

Το Lsof μπορεί να έχει πρόσβαση στις ακόλουθες μεταβλητές περιβάλλοντος.

LANG καθορίζει μια τοπική ρύθμιση γλώσσας. Δείτε τη συνάρτηση setlocale(3) για τις ονομασίες άλλων μεταβλητών που μπορούν να χρησιμοποιηθούν στη θέση της LANG - π.χ., LC_ALL, LC_TYPE, κ.λπ.

LSOFDEVCACHE καθορίζει τη διαδρομή προς ένα αρχείο προσωρινής αποθήκευσης συσκευών (device cache). Δείτε την ενότητα ΔΙΑΔΡΟΜΗ ΠΡΟΣΩΠΙΚΗΣ ΠΡΟΣΩΡΙΝΗΣ ΑΠΟΘΗΚΕΥΣΗΣ ΣΥΣΚΕΥΩΝ ΑΠΟ ΜΙΑ ΜΕΤΑΒΛΗΤΗ ΠΕΡΙΒΑΛΛΟΝΤΟΣ για περισσότερες πληροφορίες.

LSOFPERSDCPATH καθορίζει το μεσαίο στοιχείο μιας τροποποιημένης διαδρομής προσωπικής προσωρινής αποθήκευσης συσκευών. Δείτε την ενότητα ΤΡΟΠΟΠΟΙΗΜΕΝΗ ΔΙΑΔΡΟΜΗ ΠΡΟΣΩΠΙΚΗΣ ΠΡΟΣΩΡΙΝΗΣ ΑΠΟΘΗΚΕΥΣΗΣ ΣΥΣΚΕΥΩΝ για περισσότερες πληροφορίες.

ΣΥΧΝΕΣ ΕΡΩΤΗΣΕΙΣ

Οι συχνές ερωτήσεις και οι απαντήσεις τους (ένα FAQ) είναι διαθέσιμες στο αρχείο 00FAQ της διανομής του lsof.

Η τελευταία έκδοση του αρχείου βρίσκεται στη διεύθυνση:

https://github.com/lsof-org/lsof/blob/master/00FAQ

ΑΡΧΕΙΑ

/dev/kmem εικονική συσκευή μνήμης kernel

/dev/mem φυσική συσκευή μνήμης

/dev/swap συσκευή εναλλαγής (swap) του συστήματος

.lsof_hostname αρχείο προσωρινής αποθήκευσης συσκευών του lsof (το επίθημα, hostname, είναι το πρώτο στοιχείο του ονόματος του κεντρικού υπολογιστή που επιστρέφεται από τη συνάρτηση gethostname(2).)

ΣΥΓΓΡΑΦΕΙΣ

Το Lsof γράφτηκε από τον Victor A. Abell <_> του Πανεπιστημίου Purdue. Από την έκδοση 4.93.0, η ομάδα lsof-org στο GitHub συντηρεί το lsof. Πολλοί άλλοι έχουν συμβάλει στο lsof. Αυτοί αναφέρονται στο αρχείο 00CREDITS της διανομής του lsof.

ΔΙΑΝΟΜΗ

Η τελευταία διανομή του lsof είναι διαθέσιμη στη διεύθυνση

https://github.com/lsof-org/lsof/releases

ΔΕΙΤΕ ΕΠΙΣΗΣ

Δεν είναι όλες οι ακόλουθες σελίδες εγχειριδίου (manual pages) διαθέσιμες σε κάθε UNIX έκδοση στην οποία έχει μεταφερθεί το lsof.

access(2), awk(1), crash(1), fattach(3C), ff(1), fstat(8), fuser(1), gethostname(2), isprint(3), kill(1), localtime(3), lstat(2), modload(8), mount(8), netstat(1), ofiles(8L), open(2), perl(1), ps(1), readlink(2), setlocale(3), stat(2), strftime(3), time(2), uname(1).