Οι εντολές Chmod και τα δικαιώματα αρχείων Linux εξηγούνται

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

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

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

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

Ανεξάρτητα από αυτό, μία από τις πιο σημαντικές εντολές του Linux για να μάθετε Ένα Linux AZ - 40 βασικές εντολές που πρέπει να ξέρετε Ένα από τα πιο σημαντικά Linux εντολές για να μάθετε Το Linux είναι ο συχνά αγνοούμενος τρίτος τροχός στα Windows και Mac. Ναι, την τελευταία δεκαετία, το λειτουργικό σύστημα ανοιχτού κώδικα έχει κερδίσει πολλή πρόσφυση, αλλά εξακολουθεί να είναι μακριά από το να θεωρείται ... Read More είναι μια μικρή αλλά ισχυρή εντολή που ονομάζεται 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 είναι μια εντολή σε επίπεδο συστήματος που σημαίνει "mode change" και σας επιτρέπει να αλλάξετε με μη αυτόματο τρόπο τις ρυθμίσεις δικαιωμάτων ενός αρχείου.

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

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

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

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

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

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

Ο καθορισμός των αδειών ενός αρχείου στο 555 το καθιστά έτσι ώστε το αρχείο να μην μπορεί να τροποποιηθεί καθόλου από κανέναν, εκτός από το superuser του συστήματος (μάθετε περισσότερα για το superuser του Linux) Τι είναι SU & γιατί είναι σημαντικό να χρησιμοποιήσετε το Linux αποτελεσματικά; Το Linux SU ή το root user account είναι ένα ισχυρό εργαλείο που μπορεί να είναι χρήσιμο όταν χρησιμοποιείται σωστά ή καταστροφικά εάν χρησιμοποιείται απερίσκεπτα .. Ας δούμε γιατί πρέπει να είστε υπεύθυνοι όταν χρησιμοποιείτε το SU. Αυτό δεν χρησιμοποιείται τόσο συχνά όσο το 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 Ubuntu: Οδηγός για αρχάριους Ubuntu: Οδηγός για αρχάριους Περιέργεια για το Ubuntu, αλλά δεν είναι σίγουρος από πού να ξεκινήσετε; Όλα όσα θα χρειαστείτε να ξεκινήσετε με την τελευταία έκδοση του Ubuntu είναι ακριβώς εδώ, γραμμένα με εύκολο να καταλάβετε, απλά αγγλικά. Διαβάστε περισσότερα, που θα σας διδάξει όλα όσα πρέπει να ξέρετε για να ξεκινήσετε και να εξοικειωθείτε αρκετά ώστε να αισθάνεστε άνετα.

In this article