Διαφήμιση

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

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

Ανεξάρτητα, ένα από τα τις πιο σημαντικές εντολές Linux για μάθηση Ένα A-Z του Linux - 40 βασικές εντολές που πρέπει να γνωρίζετεΤο Linux είναι ο τρίτος τροχός που αγνοείται συχνά σε Windows και Mac. Ναι, την τελευταία δεκαετία, το λειτουργικό σύστημα ανοιχτού κώδικα έχει κερδίσει πολλή έλξη, αλλά εξακολουθεί να απέχει πολύ από το να εξεταστεί ... Διαβάστε περισσότερα είναι μια μικρή αλλά ισχυρή εντολή που ονομάζεται chmod. Αλλά πριν εξηγήσουμε τι κάνει η εντολή, πρέπει πρώτα να κατανοήσουμε λίγο για το πώς χειρίζεται το Linux την ασφάλεια αρχείων.

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

Τα λειτουργικά συστήματα Linux είναι πραγματικά συστήματα τύπου Unix (

instagram viewer
κατανόηση 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 είναι μια εντολή επιπέδου συστήματος που σημαίνει "αλλαγή λειτουργίας" και σας επιτρέπει να αλλάξετε χειροκίνητα τις ρυθμίσεις άδειας ενός αρχείου.

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

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

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

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

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

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

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

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

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

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

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

chmod [δικαιώματα] [αρχείο]

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

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 είναι εδώ, γραμμένα σε εύκολα κατανοητά, απλά αγγλικά. Διαβάστε περισσότερα , το οποίο θα σας διδάξει όλα όσα πρέπει να γνωρίζετε για να ξεκινήσετε και να εξοικειωθείτε αρκετά ώστε να αισθάνεστε άνετα.

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