Skip to main content

Τι είναι / etc / services στο Linux / Unix;

Understanding fork() system call for new process creation (Ενδέχεται 2024)

Understanding fork() system call for new process creation (Ενδέχεται 2024)

Πίνακας περιεχομένων:

Anonim

Τα λειτουργικά συστήματα UNIX αποθηκεύουν αυτό που ονομάζεται αρχείο υπηρεσιών στο / etc / services. Αποθηκεύει πληροφορίες σχετικά με πολλές υπηρεσίες που ενδέχεται να χρησιμοποιούν οι εφαρμογές-πελάτες στον υπολογιστή. Μέσα στο αρχείο είναι το όνομα της υπηρεσίας, ο αριθμός θύρας και το πρωτόκολλο που χρησιμοποιεί, καθώς και όλα τα ισχύοντα ψευδώνυμα.

Οι αριθμοί των θυρών αντιστοιχίζονται σε συγκεκριμένες υπηρεσίες παρόμοια με το αρχείο hosts στους υπολογιστές των Windows που αντιστοιχούν σε ένα όνομα κεντρικού υπολογιστή σε μια διεύθυνση IP. Ωστόσο, το αρχείο υπηρεσιών του λειτουργικού συστήματος UNIX δεν περιλαμβάνει διευθύνσεις IP, αλλά πληροφορίες σχετικά με το εάν η υπηρεσία είναι TCP ή UDP και ποια κοινά ονόματα μπορεί να ακολουθήσει.

Ένας απλός επεξεργαστής κειμένου μπορεί να χρησιμοποιηθεί για την επεξεργασία του αρχείου / etc / services, όπως Vim ή Kate.

Παράδειγμα αρχείου υπηρεσιών UNIX

Στο UNIX, ο βασικός ρόλος του αρχείου διαμόρφωσης / etc / services είναι ότι τα προγράμματα μπορούν να κάνουν κλήση sockets getportbyname () στον κώδικα τους για να καταλάβουν ποια θύρα θα χρησιμοποιούν. Για παράδειγμα, ένας δαίμονας ηλεκτρονικού ταχυδρομείου POP3 θα έκανε ένα getportbyname (POP3) για να ανακτήσει τον αριθμό 110 στον οποίο τρέχει το POP3.

Η ιδέα είναι ότι αν όλοι οι δαίμονες POP3 χρησιμοποιούν το getportbyname (), τότε ανεξάρτητα από το ποια daemon POP3 τρέχετε, μπορείτε πάντα να επαναρυθμίσετε τον αριθμό θύρας του, επεξεργάζοντάς τα / etc / services.

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

Όλα τα αρχεία υπηρεσιών ακολουθούν την ίδια σύνταξη:

όνομα λιμάνι / παραπομπές ψευδώνυμα πρωτοκόλλου

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

$ cat / etc / services## Copyright 2008 Sun Microsystems, Inc. Με επιφύλαξη παντός δικαιώματος.# Η χρήση τους είναι σύμφωνα με τους όρους της άδειας.##ident "@ (#) υπηρεσίες 1.34 08/11/19 SMI"## Υπηρεσίες δικτύου, στυλ Διαδικτύου#tcpmux 1 / tcpecho 7 / tcpecho 7 / udpαπορρίψτε το νεροχύτη 9 / tcpαπορρίψτε το νεροχύτη 9 / udpsystat 11 / tcp χρήστεςημέρα 13 / tcpημέρα 13 / udpnetstat 15 / tcpchargen 19 / tcp ttytst πηγήchargen 19 / udp ttytst πηγήftp-δεδομένα 20 / tcpftp 21 / tcpssh 22 / tcp # Secure Shelltelnet 23 / tcpsmtp 25 / tcp αλληλογραφίαχρόνο 37 / tcp timserverχρόνο 37 / udp timserverόνομα 42 / udp nameserverwhois 43 / tcp nicname # συνήθως σε sri-nicswat 901 / tcp # Samba Web Adm.Toolservicetag 6481 / udpservicetag 6481 / tcpsnmpd 161 / udp snmp # SMA snmp daemon$