Verstehen von Dateiberechtigungen: Was bedeutet „Chmod 777“?

Wenn Sie ein Linux-Benutzer oder ein Systemadministrator sind, der einen Linux-Server verwaltet, werden Sie auf den Fehler „Sie haben nicht die Berechtigungen, um Dateien in den Ordner hochzuladen“ stoßen. Nach einigem Googeln ist die Lösung oft so einfach wie das Setzen der Dateiberechtigung auf „775“ oder „777“. In technischen Begriffen werden Sie aufgefordert, „chmod 777 die Datei“ auszuführen. Aber was bedeutet „777“? Und warum muss es „7“ und nicht „8“ oder „9“ sein?
In diesem Beitrag zeigen wir Ihnen, wie Sie Dateiberechtigungen ein wenig besser verstehen können, einschließlich der Bedeutung von chmod 777.
Lesen Sie auch: So benennen Sie Dateien in Linux einfach um
Verstehen von Dateiberechtigungen
Unix-Systeme (einschließlich Linux und macOS) haben einen Datei-Kontrollmechanismus, der bestimmt, wer auf eine bestimmte Datei oder einen bestimmten Ordner zugreifen kann und was sie damit tun können.
Es gibt zwei Teile zu berücksichtigen:
Klassen. Dies bestimmt, wer auf die Datei zugreifen kann. Es gibt drei Bezeichnungen: einen Eigentümer, eine Gruppe (die alle dieselben Berechtigungen teilen) und andere.
- Der Eigentümer ist normalerweise der Ersteller der Datei oder des Ordners. In Linux gehören alle Dateien oder Ordner, die Sie in Ihrem Home-Verzeichnis erstellen, normalerweise Ihnen, es sei denn, Sie ändern die Eigentümerschaft ausdrücklich.
- Die Gruppe enthält eine Gruppe von Benutzern, die dieselben Berechtigungen und Benutzerprivilegien teilen.
- Andere bedeutet die allgemeine Öffentlichkeit.

Berechtigungen. Diese bestimmen, was der Benutzer mit einer Datei tun kann. Sie können eine Datei entweder lesen, schreiben oder ausführen, und Sie können fast jede Kombination dieser drei Berechtigungen festlegen.
- Lesen. Sie können den Inhalt der Datei in keiner Weise ändern. Wenn es auf einen Ordner angewendet wird, können Sie nur die Dateien innerhalb dieses Ordners anzeigen; Sie können die Dateien in keiner Weise löschen oder ändern oder weitere Dateien zum Ordner hinzufügen.
- Schreiben. Sie können die Datei ändern. Wenn Sie „Schreib“-Zugriff auf einen Ordner haben, können Sie Dateien in diesem Ordner löschen und hinzufügen.
- Ausführen. Ausführen wird hauptsächlich verwendet, wenn Sie die Datei ausführen müssen, und wird am häufigsten verwendet, wenn Sie ein Skript ausführen müssen.

Durch die Verwendung von Klassen in Kombination mit Berechtigungen können Sie steuern, wer Zugriff auf eine Datei hat und welche Aktionen sie ausführen können.
Der Dateieigentümer hat oft alle drei Berechtigungen (lesen, schreiben und ausführen) zur Verfügung. Wenn Sie eine Datei auf einen Server hochladen möchten und dies nicht möglich ist, liegt es oft an nicht übereinstimmenden Berechtigungen.
Erklärung der Dateiberechtigung 777
Sobald Sie ein grundlegendes Verständnis von Klassen und Berechtigungen haben, können Sie beginnen, Zahlen wie „777“ und „775“ zu verstehen.
Jede Datei und jeder Ordner enthält 8-Bit-Daten, die die Berechtigungen steuern. In seiner grundlegenden binären Form bedeutet 000, dass keine Berechtigungen in irgendeiner Form gewährt werden.
Wenn Sie eine „Lesen“-Berechtigung festlegen, wird 4-Bit zu den Daten hinzugefügt, wodurch es „100“ (im binären Format) oder eine „4“ im üblichen Dezimalformat wird. Das Festlegen einer „Schreiben“-Berechtigung fügt 2-Bit zu den Daten hinzu, wodurch es „010“ und „2“ im Dezimalformat wird. Schließlich fügt das Festlegen einer „Ausführen“-Berechtigung 1-Bit zu den Daten hinzu, was zu „001“ oder „1“ im Dezimalformat führt. Kurz gesagt:
- Lesen entspricht „4“.
- Schreiben entspricht „2“.
- Ausführen entspricht „1“.
Kurz gesagt, das Festlegen von Berechtigungen ist einfache Mathematik. Um beispielsweise „Lesen und Schreiben“-Berechtigungen festzulegen, kombinieren wir 4 und 2, um 6 zu erhalten. Natürlich gibt es andere Permutationen:
- 0: Keine Berechtigung
- 1: Ausführen
- 2: Schreiben
- 3: Schreiben und Ausführen
- 4: Lesen
- 5: Lesen und Ausführen
- 6: Lesen und Schreiben
- 7: Lesen, Schreiben und Ausführen
Ein vollständiger Satz von Dateiberechtigungen weist die erste Ziffer dem Eigentümer, die zweite Ziffer der Gruppe und die dritte den anderen zu. Hier sind einige der häufig verwendeten Berechtigungen:
- 755. Dieses Berechtigungsschema wird häufig von Webservern verwendet. Der Eigentümer hat alle Berechtigungen zum Lesen, Schreiben und Ausführen. Alle anderen können lesen und ausführen, aber keine Änderungen an der Datei vornehmen.
- 644. Nur der Eigentümer kann lesen und schreiben. Alle anderen können nur lesen. Niemand kann diese Datei ausführen.
- 655. Nur der Eigentümer kann lesen und schreiben und kann die Datei nicht ausführen. Alle anderen können lesen und ausführen und können die Datei nicht ändern.
Was 777 betrifft, bedeutet dies, dass jeder Benutzer lesen, schreiben und ausführen kann. Da es vollständige Berechtigungen gewährt, sollte es mit Vorsicht verwendet werden. In einigen Fällen müssen Sie jedoch die Berechtigungen 777 festlegen, bevor Sie eine Datei auf den Server hochladen können.
Festlegen von Dateiberechtigungen in der Befehlszeile
In Linux können Sie die Dateiberechtigungen ganz einfach ändern, indem Sie mit der rechten Maustaste auf eine Datei oder einen Ordner klicken und „Eigenschaften“ auswählen. Dadurch wird eine Registerkarte Berechtigungen geöffnet, in der Sie Änderungen vornehmen können.
Im Gegensatz dazu können Sie die Berechtigungseinstellungen auf macOS ändern, indem Sie mit der rechten Maustaste klicken und „Informationen abrufen“ auswählen. Hier können Sie den Abschnitt „Freigabe & Berechtigungen“ erweitern und Ihre Änderungen vornehmen.

Um Änderungen vorzunehmen, wählen Sie die entsprechenden Berechtigungen im Abschnitt Privilegien aus und wählen Sie etwas Passenderes aus.

Dies ist jedoch nicht der einzige Weg, wie Sie Dateiberechtigungen ändern können. Lassen Sie uns dies im nächsten Abschnitt näher erläutern.
Ändern von Dateiberechtigungen mit chmod 777
Wenn Sie mit dem Terminal und der Befehlszeile vertrauter sind, können Sie die Berechtigungen auch hier ändern.
Der Befehl chmod ermöglicht es Ihnen, „den Modus zu ändern“ – eine andere Möglichkeit, Zugriffsberechtigungen zu beschreiben. Um dies zu tun, öffnen Sie das Terminal und geben Sie Folgendes ein:
chmod777/path/to/fileKurz gesagt, chmod 777 kombiniert die beiden Konzepte, die wir in diesem Artikel vorgestellt haben. Es bedeutet, die Datei für jeden, der Zugriff hat, lesbar, beschreibbar und ausführbar zu machen. Daher ist es ein leistungsstarkes und potenziell systemzerstörendes Kommando – daher sollte besondere Vorsicht damit geboten sein.
Zusammenfassung
Dateiberechtigungen können Ihnen ein Hindernis darstellen, wenn sie nicht korrekt festgelegt sind. Dies ist beabsichtigt, da ein gesperrtes System nicht kompromittiert werden kann. Wenn Sie jedoch auf eine Datei auf Ihrem System oder Server zugreifen möchten, ist es eine solide Fähigkeit, zu lernen, wie man bestimmte Berechtigungen ändert.
Kurz gesagt, chmod 777 ist der Befehl, den Sie im Terminal verwenden, um eine Datei oder einen Ordner für alle zugänglich zu machen. Sie sollten ihn nur in seltenen Fällen verwenden und nach Abschluss der Arbeiten zu einem restriktiveren Berechtigungssatz zurückkehren.
Wenn Sie sich fragen, was das Terminal sonst noch tun kann, lesen Sie unseren Beitrag darüber, wie man aus der Befehlszeile kopiert und einfügt. Müssen Sie Dateiberechtigungen verwalten, und wird Ihnen dieser Beitrag helfen? Lassen Sie es uns im Kommentarbereich unten wissen!