Linux-Ordner- und Dateiberechtigungen

Linux-Ordner- und Dateiberechtigungen

Wenn ich ein Verzeichnis habe, für das der Benutzer Leseberechtigung hat, warum kann ich dann nicht prüfen, ob sich in diesem Verzeichnis eine Datei befindet? Angenommen, ich habe den Ordner /myfolder mit Leseberechtigung. Dieser Ordner enthält die Datei „garbage.txt“ mit Leseberechtigung (für den Benutzer). Wenn ich versuche, stat /myfolder/garbage.txt zu verwenden, erhalte ich die Fehlermeldung „Berechtigung verweigert“. Wenn ich Ausführungsberechtigungen für /myfolder hinzufüge, kann ich prüfen, ob garbage.txt vorhanden ist.

Warum brauche ich Ausführungsberechtigungen, um zu prüfen, ob eine Datei in einem Ordner vorhanden ist? Ich hatte erwartet, dass Leseberechtigungen für das Verzeichnis/den Ordner ausreichen würden.

Antwort1

In Linux-Ordnern lauten die Berechtigungen:

Das Schreibbit ermöglicht es dem betroffenen Benutzer, Dateien im Verzeichnis zu erstellen, umzubenennen oder zu löschen und die Attribute des Verzeichnisses zu ändern.

Das Lesebit ermöglicht dem betroffenen Benutzer, die Dateien im Verzeichnis aufzulisten

Das Execute-Bit erlaubt dem betroffenen Benutzer, das Verzeichnis zu betreten und auf Dateien und Verzeichnisse darin zuzugreifen.

Das Sticky Bit besagt, dass Dateien und Verzeichnisse innerhalb dieses Verzeichnisses nur von ihrem Besitzer (oder Root) gelöscht oder umbenannt werden dürfen.

Mehr Info:

http://www.firewall.cx/linux-knowledgebase-tutorials/introduction-to-linux/299-linux-file-folder-permissions.html

Antwort2

Ausführungsberechtigungen für ein Verzeichnis ermöglichen Ihnen das Durchqueren dieses Verzeichnisses. Und Sie müssen in der Lage sein, in das Verzeichnis zu gelangen, um stat auf diese Datei anzuwenden.

Siehe auchhttps://stackoverflow.com/questions/790686/understanding-linux-directory-permissions-reasoning

verwandte Informationen