Παραδοσιακά δικαιώματα αρχείων

Από Hellug Wiki

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

Κλάσεις

Υπάρχουν 3 κλάσεις χρηστών:

  • Ιδιοκτήτης (owner): Κάθε αρχείο και φάκελος έχει έναν χρήστη που θεωρείται "ιδιοκτήτης" του. Συνήθως είναι αυτός που το δημιούργησε.
  • Ομάδα (group): Είναι οι χρήστες που ανήκουν στην ίδια ομάδα χρηστών με τον ιδιοκτήτη.
  • Άλλοι (others): Είναι όλοι όσοι δεν ανήκουν στις προηγούμενες κατηγορίες.

Δικαιώματα

Για κάθε μια κλάση χρηστών υπάρχουν 3 διακριτά δικαιώματα:

  • Ανάγνωση (read)
    • Σε αρχεία: Επιτρέπει την ανάγνωση του αρχείου.
    • Σε φακέλους: Επιτρέπει την ανάγνωση των περιεχομένων του φακέλου.
  • Εγγραφή (write)
    • Σε αρχεία: Επιτρέπει τη μεταβολή των περιεχομένων του αρχείου.
    • Σε φακέλους: Επιτρέπει τη δημιουργία/ διαγραφή/ μετονομασία των περιεχομένων του φακέλου.
  • Εκτέλεση (execution)
    • Σε αρχεία: Επιτρέπει την εκτέλεση του αρχείου, εφόσον φυσικά αυτό είναι δυνατό.
    • Σε φακέλους: Επιτρέπει την πρόσβαση στα περιεχόμενα του φακέλου.

Έτσι υπάρχουν συνολικά 9 δικαιώματα (3 κλάσεις με 3 δικαιώματα η κάθε μια) για κάθε αρχείο και φάκελο στο σύστημα αρχείων.

Είναι συνηθισμένο να εμφανίζονται τα παραπάνω 9 δικαιώματα με 3 αριθμητικά ψηφία που λαμβάνουν τιμές μεταξύ 0 και 7, ως εξής:

0 --- κανένα δικαίωμα
1 --x εκτέλεση
2 -w- εγγραφή
3 -wx εγγραφή και εκτέλεση
4 r-- ανάγνωση
5 r-x ανάγνωση και εκτέλεση
6 rw- ανάγνωση και εγγραφή
7 rwx ανάγνωση, εγγραφή και εκτέλεση

Παραδείγματα:

rw-r--r-- (644): ανάγνωση και εγγραφή για τον ιδιοκτήτη, ανάγνωση για όλους τους υπόλοιπους
rwxr-xr-x (755): ανάγνωση, εγγραφή και εκτέλεση για τον ιδιοκτήτη, ανάγνωση και εκτέλεση για όλους τους υπόλοιπους
r-------- (400): ανάγνωση για τον ιδιοκτήτη
Τα αριθμητικά ψηφία (πχ 644) αναπαριστούν τα δικαιώματα για λόγους ευκολίας απεικόνισης. Δεν έχει νόημα να γίνει οποιαδήποτε αριθμητική πράξη με αυτά.

Τα δικαιώματα των αρχείων και φακέλων μπορούν να εμφανιστούν με την εντολή:

ls -l

Τα δικαιώματα, ο ιδιοκτήτης και η ομάδα αρχείων και φακέλων μπορούν να αλλαχτούν με τις εντολές chmod και chown.

Τα νέα αρχεία που δημιουργεί ένας χρήστης λαμβάνουν εξ ορισμού κάποια δικαιώματα που ορίζονται με την εντολή:

umask