Eine detaillierte Einführung in Linux-Dateiberechtigungen

Eine detaillierte Einführung in Linux-Dateiberechtigungen

Die Stärke von Linux liegt in seinem Mehrbenutzer- und Multitasking-System. Linux unterteilt die Identitäten, die auf Dateien zugreifen können, im Allgemeinen in drei Kategorien: Besitzer, Gruppe und andere, und jede der drei Identitäten verfügt über Lese-, Schreib- und Ausführungsberechtigungen.

Drei Identitäten der Autorität

Dateieigentümer

Dateiberechtigungen auf Benutzerebene (normalerweise die des Erstellers der Datei) können über chown geändert werden.

Benutzergruppe

Wird die Benutzergruppe mit einem Team verglichen, ist der Benutzer deren Mitglied und die Teammitglieder haben dieselben Berechtigungen für die Datei. Die Benutzergruppe einer Datei kann über chgrp geändert werden.

Zu den sinnvollsten Einsatzmöglichkeiten von Benutzergruppen gehört die Entwicklung von Ressourcen im Team. Zwei Projekte, Projekt1 und Projekt2, werden von zwei Teams entwickelt. Den Projekten werden jeweils die Benutzergruppenberechtigungen 1 und 2 zugewiesen, und dann unterstützt der Supervisor die Berechtigungen 1 und 2 gleichzeitig, d. h. jedes Konto kann die Unterstützung mehrerer Benutzergruppen haben.

Sonstiges

Nicht der Dateibesitzer und nicht zur Benutzergruppe der Datei gehörend, also alle anderen.

Dateiberechtigungen

Definition und Ansicht

Führen Sie den folgenden Befehl auf dem Server aus, um dateibezogene Informationen anzuzeigen:

[root@iz2zedcscvry6t0psspzswz ~]# ls -al
insgesamt 44
dr-xr-x---. 5 root root 4096 9. Sep. 12:11 .
dr-xr-xr-x. 18 root root 4096 9. Sep. 12:39 ..
-rw-r--r--. 1 root root 18 29. Dezember 2013 .bash_logout
-rw-r--r--. 1 root root 176 29. Dezember 2013 .bash_profile
-rw-r--r--. 1 root root 176 29. Dezember 2013 .bashrc
drwx------ 3 root root 4096 15. Oktober 2017 .cache
-rw-r--r--. 1 root root 100 29. Dezember 2013 .cshrc
drwxr-xr-x 2 root root 4096 15. Oktober 2017 .pip
-rw-r--r-- 1 root root 64 15. Oktober 2017 .pydistutils.cfg
drwx------ 2 root root 4096 9. September 12:11 .ssh
-rw-r--r--. 1 root root 129 29. Dezember 2013 .tcshrc

Das folgende Beispiel zeigt die Bedeutung der einzelnen Spalten:

Dateiberechtigungen Anzahl der Verbindungen Dateibesitzer Benutzergruppe Dateigröße Änderungsdatum Dateiname
drwxr-xr-x 2 root root 4096 15. Oktober 2017 .pip

Im Dateiberechtigungsteil steht der erste Buchstabe von drwxr-xr-x für den Dateityp und das d steht hier für das Verzeichnis. d = Verzeichnis, - = Datei, l = Linkdatei.

Es folgen Dreiergruppen. Die erste Gruppe rwx repräsentiert die Berechtigungen des Dateibesitzers, die zweite Gruppe rx repräsentiert die Berechtigungen der Benutzergruppe und die dritte Gruppe rx repräsentiert andere Benutzerberechtigungen.

In der Beispieldatei verfügt der Dateieigentümer „root“ über Lese-, Schreib- und Ausführungsberechtigungen, Benutzer in der Benutzergruppe „root“ haben Lese- und Ausführungsberechtigungen und andere Benutzer haben Lese- und Ausführungsberechtigungen.

  • Zeigen Sie das genaue Datum an, an dem eine Datei erstellt oder geändert wurde: ls -al --full-time
  • Detaillierte Verwendung von ls anzeigen: man ls oder info ls

Dateiberechtigungen ändern

  • chgrp (change group): Ändert die Benutzergruppe, zu der die Datei gehört
  • chown(change owner): Ändert den Dateibesitzer
  • chmod (change mod): Dateiberechtigungen ändern

Benutzergruppe ändern

chgrp [-R] Verzeichnisname/Dateiname

# Ändern Sie die Benutzergruppe von install.log in Benutzer
chgrp-Benutzer install.log

Dateibesitzer ändern

chown kann auch die Benutzergruppe ändern, zu der die Datei gehört

chown [-R] Kontoname: Gruppenname Datei oder Verzeichnis # Ändern Sie die Benutzergruppe und den Besitzer von install.log in root
chown root:root install.log

Ändern der Dateiberechtigungen

Gewichtsverteilung: r:4 w:2 r:1

# Setzen Sie die Dateiberechtigungen auf -rwxr-xr

chmod 754 Dateiname

# Legen Sie eine ausführbare Datei fest, um zu verhindern, dass andere sie ändern. chmod 755 Dateiname # -rwxr-xr-x

Symbolischer Typ ändert Dateiberechtigungen

Befehl Identität arbeiten dokumentieren
chmod Ugoa + (Hinzufügen) - (Entfernen) = (Festlegen) RX Datei oder Verzeichnis

Identitätsinterpretation: u = Benutzer, g = Gruppe, o = andere, a = alle

# Geben Sie der Datei die Ausführungsberechtigung, kennen Sie jedoch die ursprüngliche Berechtigung nicht chmod a+x Dateiname

Die Bedeutung von Verzeichnis- und Dateiberechtigungen

Ob eine Linux-Datei ausführbar ist, wird durch die Berechtigung „x“ bestimmt und hat keine absolute Beziehung zum Dateinamen.

In Dateien werden die eigentlichen Daten gespeichert und der Hauptinhalt von Verzeichnissen ist eine Liste aufgezeichneter Dateinamen.

Erläuterung der Dateiberechtigungen

  • r: kann Dateiinhalte lesen
  • w: kann den Dateiinhalt bearbeiten
  • x: Die Datei hat die Berechtigung, vom System ausgeführt zu werden

Erläuterung der Verzeichnisberechtigungen

  • r: Abfrage der Dateinamendaten im Verzeichnis (Sie können ls verwenden)
  • w: erstellen, löschen, umbenennen, beenden
  • x: Können Sie dieses Verzeichnis betreten?

Berechtigungskonfigurationsdatei

  • Kontoinformationen: /etc/passwd
  • Persönliches Passwort: /etc/shadow
  • Gruppenname: /etc/group

【Umfassender Fall】

[Frage 1.1] Erstellen Sie zwei Benutzergruppen, Gruppe1 und Gruppe2, und drei Benutzer, Dennis, Daniel und Abigale, und weisen Sie die ersten beiden Benutzer der Gruppe1 und den letzten der Gruppe2 zu.

【Frage 1.2】Melden Sie sich als Benutzer Dennis an und erstellen Sie eine Hello.java-Datei

【Frage 1.3】Melden Sie sich als Benutzer Daniel an und prüfen Sie, ob Sie auf das Verzeichnis /home/dennis zugreifen und die dort erstellte Datei Hello.java lesen oder schreiben können.

[Frage 1.4] Melden Sie sich als Benutzer Dennis an und ändern Sie die Lese- und Schreibberechtigungen des Verzeichnisses /home/dennis und der Datei Hello.java (Korrektur: Beim Ändern der Verzeichnisberechtigungen sollten Sie 770 statt 760 verwenden, da sonst die Berechtigungen nicht ausreichen.)

【Frage 1.5】Wiederholen Sie 【Frage 1.3】

【Frage 1.6】Ändern Sie Abigales Benutzergruppe von Gruppe2 in Gruppe1

Anschließend können Sie cat /etc/passwd verwenden, um anzuzeigen und zu bestätigen

【siehe】

-groupadd Gruppenname, Gruppe in Linux hinzufügen

-vi /etc/group, zeigt alle Gruppeninformationen in Linux an, Sie können sie anzeigen und bearbeiten

-cat /etc/group, alle Gruppeninformationen in Linux anzeigen, kann nur anzeigen, aber nicht bearbeiten

-useradd-g Gruppenname Benutzername, geben Sie beim Erstellen eines Benutzers an, welcher Gruppe der Benutzer zugewiesen wird

-vi /etc/passwd, zeigt alle Benutzerinformationen in Linux an, Sie können sie anzeigen und bearbeiten

-cat /etc/passwd, alle Benutzerinformationen in Linux anzeigen, kann nur anzeigen, aber nicht bearbeiten

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • So sichern und stellen Sie Linux-Dateiberechtigungen wieder her
  • Standardberechtigungen für Linux-Dateiverzeichnisse (ausführliche Erklärung)
  • Befehl zum Ändern der Linux-Dateiberechtigungen: ausführliche Erklärung des chmod-Befehls
  • Linux-Dateiupload: So fügen Sie Dateien oder Verzeichnissen Apache-Berechtigungen hinzu
  • Anzeigen und Ändern von Verzeichnisdateiberechtigungen (Befehle) unter Linux
  • Eine detaillierte Einführung in Linux-Datei- und Verzeichnisberechtigungen
  • Detaillierte Erläuterung der Linux-Dateiberechtigungen und Verzeichnisverwaltung
  • Ändern Sie die Dateiberechtigungen (Eigentum) unter Linux

<<:  Beispielcode zur Implementierung der Anmeldung mit Bestätigungscode in der SMS-API in Node

>>:  Schritte zur Installation von MySQL 5.7.10 auf Windows Server 2008 R2

Artikel empfehlen

my.cnf (my.ini) wichtige Parameteroptimierungs-Konfigurationsanweisungen

MyISAM-Speicher-Engine Die MyISAM-Speicher-Engine...

Beispielcode für die Master-Slave-Trennung einer MySQL-Datenbank

einführen Durch das Einrichten einer Lese-/Schrei...

Detaillierte Erläuterung der Docker Volume-Berechtigungsverwaltung

Das Datenvolumen ist ein wichtiges Konzept von Do...

Eine Codezeile zeigt Ihnen, wie Sie Linux-Prozesse verbergen

Freunde fragen mich immer, wie man Linux-Prozesse...

MySQL 8.0.16 Installations- und Konfigurations-Tutorial unter Windows 10

In diesem Artikel finden Sie das grafische Tutori...

So verwenden Sie benutzerdefinierte CSS-Variablen in Vue

Inhaltsverzeichnis Die benutzerdefinierte CSS-Var...

Beispielanalyse der Auswirkungen des MySQL-Index auf die Sortierung

Dieser Artikel veranschaulicht anhand von Beispie...

Detaillierter Installationsprozess von Jenkins unter Linux

Inhaltsverzeichnis 1. Installieren Sie JDK 2. Jen...

Ausführliche Erläuterung der Standortpriorität von Nginx

Standortausdruckstyp ~ bedeutet, dass ein regulär...

Centos8.3, Docker-Bereitstellung, Springboot-Projekt, tatsächliche Fallanalyse

Einführung Derzeit ist k8s sehr beliebt und ich h...

Beispieltest MySQL-Enumerationstyp

Bei der Entwicklung eines Projekts stößt man häuf...

Analyse des Ereignisschleifenmechanismus von js

Vorwort Wie wir alle wissen, ist JavaScript im Ke...