Bedeutung der Linux-Verzeichnisberechtigungen

Einführung

Linux-Dateien und -Verzeichnisse verfügen über Berechtigungsinformationen wie "Wer darf welche Art von Operation ausführen?". Dies wird als "Berechtigung" bezeichnet.

Ich wusste, dass die Datei "Berechtigungen" hat, aber ich wusste nicht, dass sie auch im Verzeichnis festgelegt ist, also werde ich sie zusammenstellen.

Dateiberechtigungen

Verwenden Sie zuerst ls -l / bin / cat, um die Informationen des cat-Befehls anzuzeigen.

$ ls -l /bin/cat
-rwxr-xr-x 1 root root 35064 Jan 18  2018 /bin/cat

Dateityp

Das - am Zeilenanfang gibt den Dateityp an.

Symbol Bedeutung
- Normale Datei
d Verzeichnis
l Symbolischer Link

Dateimodus

Die neun Zeichen nach dem Dateityp (rwxr-xr-x) werden als Dateimodi bezeichnet, die die Berechtigungen der Datei angeben.

Die 9 Zeichen sind "ein Block pro 3 Zeichen" und sind in "Eigentümer", "Gruppe" bzw. "andere Gruppen" unterteilt.

Inhaber Gruppe その他のGruppe
rwx r-x r-x

Bedeutung von "rwx"

rwx bedeutet "lesen", "schreiben" bzw. "ausführen".

Symbol Bedeutung
r lesen(read)
w Schreiben(write)
x Lauf(excute)

/ bin / cat erneut bestätigen

$ ls -l /bin/cat
-rwxr-xr-x 1 root root 35064 Jan 18  2018 /bin/cat

Das obige / bin / cat, aber das Schreiben von jemand anderem als dem Root-Benutzer ist verboten. Als ich versuchte zu schreiben, war ich wütend, dass ich die Option "schreibgeschützt" nicht überschreiben sollte (hinzufügen! Überschreiben).

Verzeichnisberechtigungen

Überprüfen Sie die Berechtigungen des Betreffverzeichnisses.

Um die Berechtigungen eines Verzeichnisses mit dem Befehl ls zu überprüfen, müssen Sie zusätzlich zur Option -l die Option -d verwenden, die Informationen zum Verzeichnis selbst anzeigt.

$ ls -ld Code/
drwxrwxr-x 4 vagrant vagrant 4096 Apr  8 14:54 Code/

Bedeutung der Verzeichnisberechtigungen

Verzeichnisberechtigungen verwenden die Symbole "r", "w" und "x" wie für Dateien, aber ** die Bedeutung jedes Symbols kann von der für Dateien abweichen (insbesondere "x"). ~~ Es hat eine ganz andere Bedeutung. ~~ **

Symbol Bedeutung
r lesen(Rufen Sie eine Liste der in einem Verzeichnis enthaltenen Dateien ab)
w Schreiben(Erstellen und löschen Sie Dateien und Verzeichnisse unter dem Verzeichnis)
x Lauf(Machen Sie das Verzeichnis zum aktuellen Verzeichnis)

Bestätigung des "r" -Lesens (Abrufen einer Liste der im Verzeichnis enthaltenen Dateien)

Erstellen Sie nun eine Datei und testen Sie sie.

$ mkdir permissionTest            //Erstellen Sie ein Verzeichnis mit dem Namen allowTest
$ touch permissionTest/file1.txt  //Datei1 unter Berechtigungstest.Erstellen Sie eine Datei mit dem Namen txt
$ ls -ld permissionTest/          //Überprüfen Sie das VerzeichnisilegeTest

drwxrwxr-x 2 vagrant vagrant 4096 Apr 23 11:50 permissionTest/

$ ls -l permissionTest/        //Überprüfen Sie die Dateien unter erlaubnisTest

-rw-rw-r--  1 vagrant vagrant    0 Apr 23 11:50 file1.txt     //Erfolg

Machen Sie die Berechtigungen des Erlaubnisberechtigungsverzeichnisses unlesbar und versuchen Sie, darauf zuzugreifen.

$ chmod a-r permissionTest/  //Lesegeschützt für alle Benutzer
$ ls -ld permissionTest/     

d-wx-wx--x 2 vagrant vagrant 4096 Apr 23 11:50 permissionTest/    //Lesegeschützt.

$ ls  permissionTest/
ls: cannot open directory 'permissionTest/': Permission denied

** Kein Zugriff ohne Erlaubnis. ** **.

Bestätigung des "w" -Schreibens (Erstellen und Löschen von Dateien und Verzeichnissen unter dem Verzeichnis)

Wenn write (w) im Verzeichnis festgelegt ist, kann es erstellt / gelöscht werden, auch wenn die darunter liegenden Dateien Schreibbeschränkungen unterliegen.

** Dies bedeutet, dass es von den Berechtigungen des Verzeichnisses abhängt, ob eine Datei gelöscht werden kann, nicht von den Berechtigungen der Datei. ** **.

Versuchen Sie, Einschränkungen für die Datei zu schreiben, und prüfen Sie, ob die Datei gelöscht werden kann.

$ chmod a-w file1.txt  //Schreibberechtigung für Datei entfernen
$ ll file.txt          //Überprüfen Sie die Dateiberechtigungen

-r--r--r--  1 vagrant vagrant    0 Apr 23 11:50 file1.txt  //Bestätigung des Löschens der Schreibberechtigung

$ rm  file1.txt  //Datei löschen
rm: remove write-protected regular empty file 'file1.txt'?ja Möchten Sie es löschen?

Natürlich können Sie es löschen.

Bestätigung der Ausführung "x" (machen Sie das Verzeichnis zum aktuellen Verzeichnis)

Stellen Sie sicher, dass Sie nicht auf Verzeichnisse zugreifen können, für die nicht "x" ausgeführt wird.

$ chmod a-x permissionTest/  //Beschränken Sie die Ausführungsberechtigung von allowTest
$ ls -ld permissionTest/     //Überprüfen Sie die Berechtigungen von PermissionTest

drw-rw-r-- 2 vagrant vagrant 4096 Apr 23 11:50 permissionTest/ //Bestätigung

v$ cd permissionTest/                           //permissionTest/Zugriff
-bash: cd: permissionTest/: Permission denied   //Kann nicht.

Zusammenfassung

Symbol Für Dateien Für Verzeichnisse
r Datei lesen Rufen Sie eine Liste der in einem Verzeichnis enthaltenen Dateien ab
w In Datei schreiben Erstellen und löschen Sie Dateien und Verzeichnisse unter dem Verzeichnis
x Dateiausführung Machen Sie das Verzeichnis zum aktuellen Verzeichnis

Referenz

Neues Linux-Lehrbuch

Recommended Posts

Bedeutung der Linux-Verzeichnisberechtigungen
Bedeutung der Linux-Berechtigungen
Informationen zu Linux-Datei- und Verzeichnisberechtigungen
Linux-Berechtigungen
Linux-Verzeichnisstruktur
Linux-Verzeichnisstruktur
Linux-Verzeichnishierarchie
Linux (über Verzeichnispfad)
Linux-Berechtigungen für Java
Linux-Berechtigungen [in Untersuchung]
Die Bedeutung des Selbst
Hinzufügung von Amazon Linux Swap
Erstellen Sie eine inkrementelle Sicherung von Linux (Wiederherstellung)
[Linux] Verzeichnis unter dem Stammverzeichnis
Japanische Übersetzung des Linux-Handbuchs
Eine kurze Zusammenfassung von Linux
[Linux] [Grundeinstellungen] Inhaltsverzeichnis
Grundkenntnisse in Linux und Grundbefehle
Bestätigen Sie das Festschreiben von Linux 5.7 Thermal Pressure ⁠
OMC Cloud Agent installieren --Linux-
[Muss für Anfänger] Grundlagen von Linux
[Linux] Datei- und Verzeichnisoperationsbefehle
Liste der häufig verwendeten Linux-Befehle
Ersetzen einer Zeichenfolge mit Linux-Leerzeichen
[Python] -1 Bedeutung der Umformungsmethode von Numpy
Zeigen Sie den vollständigen Pfad (absoluten Pfad) einer Datei in einem Verzeichnis in Linux Bash an