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

Einige Parameterbeschreibungen von Texteingabefeldern im Webdesign

In Gästebüchern, Foren und anderen Orten werden i...

Ausführliche Erläuterung des MySQL-Gemeinschaftsindex und des eindeutigen Index

Szenario 1. Pflegen Sie ein Bürgersystem mit eine...

Uniapps Erfahrung in der Entwicklung kleiner Programme

1. Erstellen Sie ein neues UI-Projekt Zunächst ei...

Eine audiovisuelle Linux-Distribution, die Audiophile anspricht

Ich bin kürzlich auf das Audiovisual Linux Projec...

MySQL-Operator-Zusammenfassung

Inhaltsverzeichnis 1. Arithmetische Operatoren 2....

JavaScript-Ereigniserfassungs-Blubbern und Erfassungsdetails

Inhaltsverzeichnis 1. Ereignisablauf 1. Konzept 2...

Wie überwacht und erhält Zabbix Netzwerkgerätedaten über SSH?

Szenariosimulation: Das Betriebs- und Wartungsper...

Neonlichteffekte mit reinem CSS3 umgesetzt

Dies ist der zu erzielende Effekt: Sie können seh...

Aktivieren Sie den SSHD-Vorgang im Docker

Installieren Sie zunächst den OpenSSH-Server im D...

Beispiel für eine geplante MySQL-Datenbanksicherung

Dieser Artikel beschreibt das Beispiel eines gepl...

So verkleinern Sie die Protokolldatei in MYSQL SERVER

Das Transaktionsprotokoll zeichnet die Vorgänge a...

Lokale Vue-Komponentendatenfreigabe Vue.observable()-Nutzung

Wenn Komponenten detaillierter werden, treten Sit...