Μία ομάδα είναι απλά μία λίστα χρηστών. Οι ομάδες αναγνωρίζονται από το όνομά τους και το GID (Group ID). Στο FreeBSD (και στα περισσότερα άλλα όμοια UNIX® συστήματα), οι δύο παράγοντες που ο πυρήνας χρησιμοποιεί για να αποφασίσει αν μία διεργασία επιτρέπεται να κάνει κάτι είναι το ID του χρήστη της και η λίστα με τις ομάδες που ανήκει. Σε αντίθεση με το ID του χρήστη, μια διεργασία έχει μια λίστα με τις ομάδες που σχετίζονται με αυτήν. Μπορεί να ακούσετε κάποια πράγματα να αναφέρονται στο “group ID” ενός χρήστη ή μιας διεργασίας. Τις περισσότερες φορές, αυτό σημαίνει απλά την πρώτη ομάδα της λίστας.
Η αντιστοίχηση του ονόματος της ομάδας στο ID της ομάδας βρίσκεται
στο /etc/group
. Αυτό είναι ένα αρχείο απλού
κειμένου με τέσσερα πεδία χωρισμένα με κόμματα. Το πρώτο πεδίο είναι το
όνομα της ομάδας, το δεύτερο είναι ο κρυπτογραφημένος κωδικός, το
τρίτο το ID της ομάδας, και το τέταρτο η λίστα των μελών, χωρισμένη με
κόμματα. Μπορείτε να την επεξεργαστείτε άφοβα με το χέρι
(θεωρώντας, φυσικά, ότι δεν κάνετε συντακτικά λάθη!). Για μια πιο
ολοκληρωμένη περιγραφή της σύνταξης, δείτε την σελίδα manual
group(5).
Αν δεν θέλετε να επεξεργαστείτε το /etc/group
με το χέρι, μπορείτε να χρησιμοποιήσετε την pw(8) εντολή για να
προσθέσετε και να επεξεργαστείτε ομάδες. Για παράδειγμα, για να
προσθέσετε μια ομάδα που λέγεται teamtwo
και
μετά να επιβεβαιώσετε ότι υπάρχει, μπορείτε να χρησιμοποιήσετε:
#
pw groupadd teamtwo
#
pw groupshow teamtwo
teamtwo:*:1100:Ο αριθμός 1100
παραπάνω είναι το ID της
ομάδας teamtwo
. Αυτή την στιγμή, η
teamtwo
δεν έχει μέλη, και γι'αυτό είναι μάλλον
άχρηστη. Ας το αλλάξουμε αυτό προσκαλώντας τον jru
στην ομάδα teamtwo
.
#
pw groupmod teamtwo -M jru
#
pw groupshow teamtwo
teamtwo:*:1100:jruΗ παράμετρος στην επιλογή -M
είναι μια
λίστα χρηστών που πρόκειται να γίνουν μέλη της ομάδας, χωρισμένη με
κόμματα. Από τα προηγούμενα τμήματα, γνωρίζουμε ότι και το αρχείο
κωδικών (password file) περιέχει επίσης μια ομάδα για κάθε χρήστη.
Ο χρήστης εισάγεται αυτόματα (από το σύστημα) ως μέλος της ομάδας
αυτής. Ο χρήστης δεν θα εμφανίζεται ως μέλος της αρχικής αυτής ομάδας
όταν χρησιμοποιείται η επιλογή groupshow
με την
pw(8), αλλά θα εμφανίζεται όταν η πληροφορία αναζητείται μέσω της
id(1) ή παρόμοιου εργαλείου. Με άλλα λόγια, η pw(8)
χειρίζεται μόνο το αρχείο /etc/group
, και δεν θα
προσπαθήσει ποτέ να διαβάσει πρόσθετα δεδομένα από το
/etc/passwd
.
#
pw groupmod teamtwo -m db
#
pw groupshow teamtwo
teamtwo:*:1100:jru,dbΗ παράμετρος στην επιλογή -m
είναι μια λίστα
χρηστών (χωρισμένη με κόμματα) που πρόκειται να προστεθούν στα
υπάρχοντα μέλη της ομάδας. Σε αντίθεση με το προηγούμενο παράδειγμα,
οι χρήστες αυτοί προστίθενται στην ομάδα, και δεν αντικαθιστούν τους
χρήστες που ήδη ανήκουν σε αυτή.
%
id jru
uid=1001(jru) gid=1001(jru) groups=1001(jru), 1100(teamtwo)Όπως μπορείτε να δείτε, ο jru
είναι μέλος των
ομάδων jru
και
teamtwo
.
Για περισσότερες πληροφορίες σχετικά με την pw(8), δείτε την
σελίδα manual, και για περισσότερες πληροφορίες σχετικά με την
μορφοποίηση του /etc/group
, συμβουλευτείτε την
σελίδα manual group(5).
Αυτό το κείμενο, και άλλα κείμενα, μπορεί να βρεθεί στο ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/
Για ερωτήσεις σχετικά με το FreeBSD, διαβάστε την
τεκμηρίωση πριν να επικοινωνήσετε με την
<questions@FreeBSD.org>.
Για ερωτήσεις σχετικά με αυτή την τεκμηρίωση, στείλτε e-mail στην
<doc@FreeBSD.org>.