Werbung

Also hast du habe eine Linux-Variante gefunden, die dir gefällt, aber jetzt sind Sie verwirrt, weil Sie nicht die geringste Ahnung von Terminalbefehlen und Linux-Dateiberechtigungen haben?

Oder Sie haben eine Website, die auf einem Linux-Server gehostet wird, und Sie haben einige Probleme mit Dateiberechtigungen, die nur mit etwas Befehlszeilenmagie gelöst werden können.

Egal, einer der Die wichtigsten Linux-Befehle zum Lernen Ein A-Z von Linux - 40 wichtige Befehle, die Sie kennen solltenLinux ist das oft ignorierte dritte Rad für Windows und Mac. Ja, in den letzten zehn Jahren hat das Open-Source-Betriebssystem viel an Zugkraft gewonnen, aber es ist noch weit davon entfernt, in Betracht gezogen zu werden ... Weiterlesen ist ein kleiner, aber mächtiger Befehl namens chmod. Bevor wir jedoch erklären, was der Befehl bewirkt, müssen wir zunächst ein wenig verstehen, wie Linux mit der Dateisicherheit umgeht.

Die Grundlagen der Linux-Dateiberechtigungen

Linux-Betriebssysteme sind eigentlich Unix-ähnliche Systeme (

instagram viewer
Linux verstehen vs. Unix) und Unix-ähnliche Systeme nähern sich Dateiberechtigungen wie folgt an:

Jede Datei hat eine Inhaber, der die "Benutzerklasse" der Datei bestimmt. Jede Datei hat auch eine Gruppe, der die "Gruppenklasse" der Datei bestimmt. Jeder Systembenutzer, der nicht der Eigentümer ist und nicht zur selben Gruppe gehört, wird als solcher bestimmt Andere.

Allen Dateien auf Unix-ähnlichen Systemen sind Berechtigungen für alle drei Klassen zugewiesen. Diese bestimmen, welche Aktionen von diesen Klassen für die angegebene Datei ausgeführt werden können.

Die drei auf einem Unix-ähnlichen System verfügbaren Aktionen sind: lesen (die Möglichkeit, den Inhalt der Datei zu öffnen und anzuzeigen), schreiben (die Möglichkeit, den Inhalt einer Datei zu öffnen und zu ändern) und ausführen (die Fähigkeit, die Datei als ausführbares Programm auszuführen).

Mit anderen Worten, die Berechtigungen einer Datei bestimmen, ob:

  • Der Eigentümer kann die Datei lesen, schreiben und ausführen.
  • Die Gruppe kann die Datei lesen, schreiben und ausführen.
  • Jeder andere kann die Datei lesen, schreiben und ausführen.

Linux-Dateiberechtigungen können in zwei Formaten angezeigt werden.

Das erste Format wird aufgerufen symbolische NotationDies ist eine Zeichenfolge mit 10 Zeichen: ein Zeichen, das den Dateityp darstellt, dann neun Zeichen die die Lese- (r), Schreib- (w) und Ausführungsberechtigungen (x) der Datei in der Reihenfolge von Eigentümer, Gruppe und darstellen Andere. Wenn nicht zulässig, wird das Strichsymbol (-) verwendet.

Beispielsweise:

-rwxr-xr--

Dies bedeutet, dass es sich um eine reguläre Datei mit Lese-, Schreib- und Ausführungsberechtigungen für den Eigentümer handelt. Lese- und Ausführungsberechtigungen für die Gruppe; und nur Berechtigungen für alle anderen lesen.

Das zweite Format wird aufgerufen numerische NotationDies ist eine dreistellige Zeichenfolge, die jeweils Benutzer-, Gruppen- und andere Berechtigungen darstellt. Jede Ziffer kann zwischen 0 und 7 liegen. Der Wert jeder Ziffer wird durch Summieren der Berechtigungen der Klasse ermittelt:

  • 0 bedeutet, dass keine Berechtigungen zulässig sind.
  • +1, wenn die Klasse die Datei ausführen kann.
  • +2, wenn die Klasse in die Datei schreiben kann.
  • +4 wenn die Klasse die Datei lesen kann.

Mit anderen Worten, die Bedeutung jedes Ziffernwerts lautet:

  • 0: Keine Erlaubnis
  • 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

Also das obige Beispiel (-rwxr-xr--) wäre 754 in numerischer Notation.

Das sind die Linux-Dateiberechtigungen auf den Punkt gebracht.

Was ist Chmod?

Auf Unix-ähnlichen Systemen chmod ist ein Befehl auf Systemebene, der für "Änderungsmodus" steht und es Ihnen ermöglicht, die Berechtigungseinstellungen einer Datei manuell zu ändern.

Nicht zu verwechseln chownDies ist ein weiterer Befehl auf Systemebene auf Unix-ähnlichen Systemen, der für "Eigentümer ändern" steht und es Ihnen ermöglicht, einem anderen Benutzer den Besitz einer Datei zuzuweisen, oder chgrp, was für "Gruppe ändern" steht und eine Datei einer anderen Gruppe zuweist. Diese sind wichtig zu wissen, werden aber nicht so häufig verwendet wie chmod.

Was bedeutet Chmod 644?

Wenn Sie die Berechtigungen einer Datei auf 644 setzen, kann nur der Eigentümer auf die Datei zugreifen und sie ändern, wie auch immer wollen, während alle anderen nur ohne Änderung zugreifen können und niemand die Datei ausführen kann - nicht einmal die Inhaber. Dies ist die ideale Einstellung für öffentlich zugängliche Dateien, da Flexibilität und Sicherheit in Einklang gebracht werden.

Was bedeutet Chmod 755?

Das Festlegen der Berechtigungen einer Datei auf 755 ist im Grunde dasselbe wie 644, außer dass jeder über Ausführungsberechtigungen verfügt. Dies wird hauptsächlich für öffentlich zugängliche Verzeichnisse verwendet, da die Ausführungsberechtigung erforderlich ist, um in ein Verzeichnis zu wechseln.

Was bedeutet Chmod 555?

Wenn Sie die Berechtigungen einer Datei auf 555 setzen, kann die Datei von niemandem außer dem Superuser des Systems geändert werden (Erfahren Sie mehr über den Linux-Superuser Was ist SU und warum ist es wichtig, Linux effektiv zu nutzen?Das Linux SU- oder Root-Benutzerkonto ist ein leistungsstarkes Tool, das bei korrekter Verwendung hilfreich oder bei rücksichtsloser Verwendung verheerend sein kann. Schauen wir uns an, warum Sie bei der Verwendung von SU verantwortlich sein sollten. Weiterlesen ). Dies wird nicht so häufig verwendet wie 644, aber es ist immer noch wichtig zu wissen, da die schreibgeschützte Einstellung versehentliche Änderungen und / oder Manipulationen verhindert.

Was bedeutet Chmod 777?

Wenn Sie die Berechtigungen einer Datei auf 777 setzen, kann jeder mit der Datei alles tun, was er will. Dies ist ein großes Sicherheitsrisiko, insbesondere auf Webservern! Im wahrsten Sinne des Wortes kann jeder auf die Datei zugreifen, sie nach Belieben ändern und auf dem System ausführen. Sie können sich den möglichen Schaden vorstellen, wenn ein Schurkenbenutzer ihn in die Hände bekommt.

Verwendung von Chmod unter Linux

Der Befehl chmod hat ein einfaches Format:

chmod [Berechtigungen] [Datei]

Berechtigungen können in numerischer Notation angegeben werden. Dies ist das beste Format, wenn Sie bestimmte Berechtigungen für alle Klassen zuweisen möchten:

chmod 644 example.txt

Berechtigungen können auch in symbolischer Notation angegeben werden. Dies ist nützlich, wenn Sie nur die Berechtigungen einer bestimmten Klasse ändern möchten. Beispielsweise:

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

Sie können Berechtigungen für mehrere Klassen ändern, z. B. in diesem Beispiel, in dem der Eigentümer zum Lesen / Schreiben / Ausführen, die Gruppe und andere zum Lesen / Ausführen festgelegt werden:

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

Wenn Sie mehreren Klassen dieselben Berechtigungen zuweisen, können Sie diese kombinieren:

chmod u = rwx, go = rw example.txt

Die Schönheit der Verwendung der symbolischen Notation zeigt sich jedoch, wenn Sie nur die Berechtigung für eine bestimmte Aktion für eine bestimmte Klasse hinzufügen oder entfernen möchten.

Zum Beispiel dies fügt hinzu die Ausführungsberechtigung für den Eigentümer der Datei:

chmod u + x example.txt

Und das entfernt die Schreib- und Ausführungsberechtigungen für andere Benutzer:

chmod o-wx example.txt

Wenn Sie einen bestimmten Satz von Berechtigungen auf alle Dateien und Ordner in einem bestimmten Verzeichnis (d. H. Einem rekursiven chmod) anwenden möchten, verwenden Sie die Option -R und wählen Sie ein Verzeichnis aus:

chmod -R 755 Beispielverzeichnis

Während der Befehl chmod auf den ersten Blick etwas verrückt aussieht, ist er eigentlich recht einfach und völlig logisch. Wenn Sie das oben Genannte verstehen, beherrschen Sie chmod im Grunde!

Weitere Informationen zum Beherrschen von Linux

Befehle wie chmod, chown und chgrp sind nur die Spitze des Linux-Eisbergs. Wenn Sie mit dem Betriebssystem noch nicht vertraut sind, empfehlen wir Ihnen, diese zu überprüfen nette Tricks für Linux-Neulinge sowie diese Linux-Befehle, die Sie niemals ausführen sollten.

Am wichtigsten ist jedoch, dass Sie sich am besten unsere ansehen umfassende Anleitung für Anfänger zu Ubuntu und Linux Ubuntu: Ein Leitfaden für AnfängerNeugierig auf Ubuntu, aber nicht sicher, wo ich anfangen soll? Alles, was Sie möglicherweise brauchen, um mit der neuesten Version von Ubuntu zu beginnen, finden Sie hier in leicht verständlichem, einfachem Englisch. Weiterlesen Hier erfahren Sie alles, was Sie wissen müssen, um loszulegen und sich so vertraut zu machen, dass Sie sich wohl fühlen.

Joel Lee hat einen B.S. in Informatik und über sechs Jahre Berufserfahrung im Schreiben. Er ist Chefredakteur von MakeUseOf.