Η εντολή Chmod και τα δικαιώματα αρχείου Linux εξηγούνται

Η εντολή Chmod και τα δικαιώματα αρχείου Linux εξηγούνται

Βρήκατε λοιπόν μια γεύση Linux που σας αρέσει, αλλά τώρα μπερδευτήκατε επειδή δεν έχετε την πιο αμυδρή ιδέα σχετικά με τις εντολές τερματικού και τα δικαιώματα αρχείων Linux;





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





Ανεξάρτητα, ένα από τα πιο βασικές εντολές Linux για εκμάθηση είναι μια μικρή αλλά ισχυρή εντολή που ονομάζεται chmod Το Αλλά πριν εξηγήσουμε τι κάνει η εντολή, πρέπει πρώτα να καταλάβουμε λίγο για το πώς χειρίζεται το Linux την ασφάλεια αρχείων.





Τα βασικά των δικαιωμάτων αρχείων Linux

Τα λειτουργικά συστήματα Linux είναι στην πραγματικότητα συστήματα που μοιάζουν με Unix ( κατανόηση Linux εναντίον Unix ), και τα συστήματα που μοιάζουν με Unix προσεγγίζουν τα δικαιώματα αρχείων όπως παρακάτω:

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



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

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





Με άλλα λόγια, τα δικαιώματα ενός αρχείου καθορίζουν εάν:

  • Ο κάτοχος μπορεί να διαβάσει, να γράψει και να εκτελέσει το αρχείο.
  • Η ομάδα μπορεί να διαβάσει, να γράψει και να εκτελέσει το αρχείο.
  • Οποιοσδήποτε άλλος μπορεί να διαβάσει, να γράψει και να εκτελέσει το αρχείο.

Τα δικαιώματα αρχείων Linux μπορούν να εμφανιστούν σε δύο μορφές.





Η πρώτη μορφή ονομάζεται συμβολική σημειογραφία , η οποία είναι μια συμβολοσειρά 10 χαρακτήρων: ένας χαρακτήρας που αντιπροσωπεύει τον τύπο αρχείου, στη συνέχεια εννέα χαρακτήρες που αντιπροσωπεύουν τα δικαιώματα ανάγνωσης (r), εγγραφής (w) και εκτέλεσης (x) του αρχείου κατά σειρά κατόχου, ομάδας και άλλων. Εάν δεν επιτρέπεται, χρησιμοποιείται το σύμβολο παύλας (-).

Για παράδειγμα:

-rwxr-xr--

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

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

  • 0 σημαίνει ότι δεν επιτρέπονται δικαιώματα.
  • +1 εάν η κλάση μπορεί να εκτελέσει το αρχείο.
  • +2 εάν η τάξη μπορεί να γράψει στο αρχείο.
  • +4 εάν η τάξη μπορεί να διαβάσει το αρχείο.

Με άλλα λόγια, η σημασία κάθε ψηφιακής τιμής καταλήγει να είναι:

  • 0: Χωρίς άδεια
  • 1: Εκτέλεση
  • 2: Γράψτε
  • 3: Γράψτε και εκτελέστε
  • 4: Διαβάστε
  • 5: Διαβάστε και εκτελέστε
  • 6: Διαβάστε και γράψτε
  • 7: Διαβάστε, γράψτε και εκτελέστε

Το παραπάνω παράδειγμα λοιπόν (

-rwxr-xr--

) θα ήταν 754 σε αριθμητική σημειογραφία.

Αυτά είναι τα δικαιώματα αρχείων Linux με λίγα λόγια.

Τι είναι το Chmod;

Σε συστήματα τύπου Unix, chmod είναι μια εντολή σε επίπεδο συστήματος που σημαίνει 'αλλαγή λειτουργίας' και σας επιτρέπει να αλλάξετε χειροκίνητα τις ρυθμίσεις άδειας ενός αρχείου.

αντιγραφή μουσικής από το ipod στο itunes

Δεν πρέπει να συγχέεται με chown , η οποία είναι μια άλλη εντολή σε επίπεδο συστήματος σε συστήματα παρόμοια με το Unix που σημαίνει «αλλαγή κατόχου» και σας επιτρέπει να εκχωρήσετε την ιδιοκτησία ενός αρχείου σε άλλο χρήστη, ή chgrp , που σημαίνει «αλλαγή ομάδας» και εκχωρεί ένα αρχείο σε διαφορετική ομάδα. Αυτά είναι σημαντικό να γνωρίζουμε, αλλά όχι τόσο συχνά όσο το chmod.

Τι σημαίνει Chmod 644;

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

πώς να αφαιρέσετε το bloatware των Windows 10

Τι σημαίνει το Chmod 755;

Ο καθορισμός των δικαιωμάτων ενός αρχείου σε 755 είναι βασικά το ίδιο πράγμα με το 644 εκτός από το ότι όλοι έχουν επίσης δικαιώματα εκτέλεσης. Αυτό χρησιμοποιείται κυρίως για δημόσια προσβάσιμους καταλόγους επειδή απαιτείται άδεια εκτέλεσης για να μετατραπεί σε κατάλογο.

Τι σημαίνει το Chmod 555;

Ορίζοντας τα δικαιώματα ενός αρχείου σε 555 το καθιστά έτσι ώστε το αρχείο να μην μπορεί να τροποποιηθεί καθόλου από κανέναν εκτός από τον υπερχρήστη του συστήματος (μάθετε περισσότερα για τον υπερχρήστη Linux). Αυτό δεν χρησιμοποιείται τόσο συχνά όσο το 644, αλλά είναι ακόμα σημαντικό να γνωρίζετε επειδή η ρύθμιση μόνο για ανάγνωση αποτρέπει τυχαίες αλλαγές και/ή παραβιάσεις.

Τι σημαίνει το Chmod 777;

Ορίζοντας τα δικαιώματα ενός αρχείου σε 777 το καθιστά έτσι ώστε ο καθένας να μπορεί να κάνει ό, τι θέλει με το αρχείο. Αυτός είναι ένας τεράστιος κίνδυνος ασφαλείας, ειδικά στους διακομιστές ιστού! Κυριολεκτικά οποιοσδήποτε μπορεί να έχει πρόσβαση στο αρχείο, να το τροποποιήσει όπως θέλει και να το εκτελέσει στο σύστημα. Μπορείτε να φανταστείτε την πιθανή ζημιά εάν ένας αδίστακτος χρήστης το έπιασε στα χέρια του.

Πώς να χρησιμοποιήσετε το Chmod στο Linux

Η εντολή chmod έχει απλή μορφή:

chmod [permissions] [file]

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

chmod 644 example.txt

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

chmod u=rwx example.txt
chmod g=rw example.txt
chmod o=rw example.txt

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

chmod u=rwx,g=rw,o=rw example.txt

Όταν εκχωρείτε τα ίδια δικαιώματα σε πολλές κλάσεις, μπορείτε να τα συνδυάσετε:

chmod u=rwx,go=rw example.txt

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

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

chmod u+x example.txt

Και αυτό αφαιρεί τα δικαιώματα εγγραφής και εκτέλεσης για άλλους χρήστες:

chmod o-wx example.txt

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

chmod -R 755 example_directory

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

Μάθετε περισσότερα για το Mastering Linux

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

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

Μερίδιο Μερίδιο Τιτίβισμα ΗΛΕΚΤΡΟΝΙΚΗ ΔΙΕΥΘΥΝΣΗ 5 Συμβουλές για την υπερφόρτιση των μηχανών σας VirtualBox Linux

Έχετε κουραστεί από τις κακές επιδόσεις που προσφέρουν οι εικονικές μηχανές; Δείτε τι πρέπει να κάνετε για να αυξήσετε την απόδοση του VirtualBox.

Διαβάστε Επόμενο
Σχετικά θέματα
  • Linux
  • Εντολές Linux
Σχετικά με τον Συγγραφέα Τζόελ Λι(Δημοσιεύθηκαν 1524 άρθρα)

Ο Joel Lee είναι ο αρχισυντάκτης του MakeUseOf από το 2018. Έχει πτυχίο B.S. στην Επιστήμη των Υπολογιστών και πάνω από εννέα χρόνια επαγγελματικής εμπειρίας συγγραφής και επεξεργασίας.

Περισσότερα από τον Joel Lee

Εγγραφείτε στο newsletter μας

Εγγραφείτε στο ενημερωτικό μας δελτίο για τεχνικές συμβουλές, κριτικές, δωρεάν ebooks και αποκλειστικές προσφορές!

Κάντε κλικ εδώ για εγγραφή
Κατηγορία Linux