Linux chmod Beispiel

In diesem kurzen Tutorial werden wir sehen, wie wir den chmod-Befehl in einem Ubuntu-Rechner verwenden können, um Benutzerrechte für bestimmte Dateien zu finden, zu ändern und zu entfernen, die im Dateisystem des Benutzers existieren. Spielen wir verschiedene Bedingungen durch, damit wir die grundlegenden chmod-Befehle beherrschen, die unseren Alltag mit Ubuntu erleichtern können.

Linux-Berechtigungen

Linux-Berechtigungen sind ein großartiges Regelwerk, das einfach zu verstehen ist, wenn wir die Grundrechte begreifen. Die drei wichtigsten Punkte, die wir verstehen müssen, um zu wissen, wie Linux-Berechtigungen funktionieren, sind:

  • Das Element, für das die Berechtigungen definiert wurden
  • Welche Aktionen mit einer Berechtigung ausgeführt werden können
  • Wer welche Aktionen ausführen darf

Es gibt zwei grundlegende Elemente im Linux-Dateisystem:

  1. Verzeichnisse
  2. Dateien

Es gibt drei Aktionen, die ausgeführt werden können:

  1. Lesen
  2. Schreiben
  3. Ausführen. Abgesehen von der Ausführung von Skripten sind dieselben Aktionen erforderlich, um Dateien und andere Ordner darin zu erstellen

Benutzer, die diese Aktionen ausführen können, sind:

  1. Besitzer der Datei
  2. Gruppe des Besitzers der Datei
  3. Benutzer, die nicht mit der Besitzergruppe oder dem Besitzer selbst verbunden sind

Um die Berechtigungen für eine Datei anzuzeigen, führen Sie den folgenden Befehl aus:

ls -l

Hier ist, was wir mit diesem Befehl zurückbekommen:

Erlaubnis für Dateien finden

Erlaubnis für Dateien finden

In der Ausgabe stellen die ersten 10 Zeichen die Erlaubnis für die Datei dar:

  • Das erste Zeichen, das in diesem Fall „-“ ist, bedeutet, dass es sich um eine Datei handelt. Bei einem Verzeichnis wäre dies ein ‚d‘.
  • Die nächsten neun Zeichen stehen für die Berechtigungen des Eigentümers, der Gruppe des Eigentümers und anderer.

Ändern von Berechtigungen

Die Syntax zum Ändern der Berechtigung einer Datei sieht so aus:

chmod permissions file …

Oktale Darstellung für Berechtigungen

Wir können Berechtigungen als oktale Zahl darstellen. Um zum Beispiel Lese-, Schreib- & und Ausführungsrechte für den Besitzer, Lese- & und Schreibrechte für seine Gruppe und keine Rechte für andere auf die Datei hello.txt zu setzen, führen wir folgenden Befehl aus:

sudo chmod 760 hello.txt

Wenn wir den obigen Befehl ausführen und versuchen, eine Datei mit einem Nicht-Besitzerkonto mit folgendem Befehl zu lesen:

sudo -u notowner-user more hello.txt

Wir werden folgende Fehlermeldung erhalten:

hello.txt: Permission denied

Aber woher kommt diese Zahl? Jede Ziffer dieser Zahl steht für eine Reihe von Berechtigungen. Sehen wir uns an, wie sie abgeleitet wurden:

  • 0: Bedeutet keine Berechtigung
  • 1: Bedeutet die Ausführungsberechtigung
  • 2: Bedeutet die Schreibberechtigung
  • 4: Bedeutet die Leseberechtigung

Für die Zuweisung von Lese-, Schreib- & und Ausführungsberechtigungen für den Eigentümer haben wir ihm die Zahl 7(= 4 + 2 + 1) zugewiesen. Lassen Sie uns dies anhand einer Zahlentabelle besser verstehen:

Nummer Binär Lesen Schreiben Ausführen
0 000 NEIN NEIN NEIN
1 001 NEIN NEIN JA
2 010 NEIN JA NEIN
3 011 NEIN JA JA
4 100 JA NEIN NEIN
5 101 JA NEIN JA
6 110 JA Ja Nein
7 111 Ja Ja Ja

Die obige Tabelle ist sehr übersichtlich, was die einzelnen Dateiberechtigungen bedeuten.

Zeichendarstellung für Berechtigungen

Wir können die Berechtigungen als oktale Zahl darstellen. Um zum Beispiel Lese-, Schreib- & und Ausführungsrechte für den Besitzer, Lese- & und Schreibrechte für seine Gruppe und keine Rechte für andere auf die Datei hello.txt zu setzen, führen wir folgenden Befehl aus:

sudo chmod u=rwe,g=rw,o-rwx hello.txt

Um einem bestehenden Benutzer Berechtigungen hinzuzufügen, können wir auch folgendes tun:

sudo chmod g+w hello.txt

Hier wurde die Schreibberechtigung der Benutzergruppe des Besitzers der Datei zugewiesen.

Rekursive Berechtigungsänderungen

Wir können auch die Berechtigungen für Dateien in einem bestimmten Verzeichnis mit einem einzigen Befehl ändern. Um die Berechtigungen aller Dateien und Ordner in einem bestimmten Verzeichnis auf einmal zu ändern, verwenden Sie sudo chmod mit -R:

sudo chmod 777 Verzeichnis/*

Wir sehen die folgende Ausgabe, die die Änderung der Dateiberechtigungen deutlich widerspiegelt:

Dateiberechtigungen rekursiv ändern

Dateiberechtigungen rekursiv ändern

Schlussfolgerung

In dieser Lektion haben wir uns angeschaut, wie wir eine Dateiberechtigung ändern können, und wenn nötig, rekursiv. Wir haben die grundlegenden Konzepte hinter den Linux-Berechtigungen verstanden, die uns bei unserer täglichen Arbeit sehr helfen können.

Schreibe einen Kommentar