Linux Ordner und Datei Rechte

Datum: 2. August 2016
Autor*in: Florian Müller


Da ich gerade darauf gestoßen bin und es für einige Verwirrung bei mir und ein paar anderen gesorgt hat (vor allem bei mir), möchte ich meine Erkenntnisse über das Thema Linux Datei und Ordner Rechte mit euch teilen.

Man stelle sich vor, man hat eine Datei die in einem Ordne liegt, welche die folgenden Rechte hat (für die, die es nicht wissen, “ . “ stellt den Ordner in dem man sich befindet in der Konsole dar):


-rwxrwxrwx 1 www-data www-data 0    Aug 2 14:16 examplefile
drwxr--r-- 2 www-data www-data 4096 Aug 2 14:16 .


Man selbst ist als User „Foobar“ unterwegs. Kann man die Datei nun löschen oder nicht? Antwort nein. Begründung folgt.

In Linux sind Ordner auch nur Dateien, welche eine Liste der beinhaltenden Dateien enthält (grob gesagt). Um nun die Datei examplefile zu entfernen, muss man diese Liste also den Ordner bearbeiten können. Sprich, man braucht write Rechte. Die Rechte der Datei sind dabei komplett unabhängig, es zählen nur die Rechte des Ordners.

Die Recht der Datei sind nur dafür da, damit man deren Inhalt bearbeiten beziehungsweise löschen kann.

Nachfolgend noch ein Zitat, welches dies sehr schön nochmals kurz beschreibt.

ZB kann wer Schreibrechte in einem Verzeichnis hat, dort auch jede Datei löschen, auch wenn er für diese Dateien sonst überhaupt keine Rechte hat. Wer aber nur das Schreibrecht auf eine Datei hat, aber kein Schreibrecht im Verzeichnis, kann zwar in einer Datei Zeilen oder den gesamten Inhalt löschen, den Dateinamen mit dessen Bezug auf die Inode allerdings nicht.

(Quelle: http://wiki.linux-club.de/opensuse/Zugriffsrechte#Verzeichnisse)

Ich hoffe, ich konnte dem einen oder anderen hiermit helfen die Rechte unter Linux besser zu verstehen.


Dieser Artikel wurde verschlagwortet unter:


Kommentare

Selber kommentieren:






Weitere Beiträge zum Thema Technologie


PHP Locale Setting für Windows

Autor*in: Stefan Oswald


Technologie


Um deutsche Locales unter PHP auf einem Linux-System zu verwenden, setzt man einfach die gewünschte Locale-Einstellung (z.B. LC_TIME) auf de_DE.utf8, und in der Regel passt das dann. Zur Not kann man sich mit dem Kommandozeilen-Parameter locale -a auch einfach die verfügbaren Locales ausgeben lassen und weiß dann Bescheid. Falls die benötigte Locale nicht installiert ist, …


Beitrag lesen
16
DEZ
11

XAMPP unter Windows vs. SSL Authentifizierung

Autor*in:


Technologie


Heißen Käfer im Apache unter XAMPP auf Windows entdeckt: Im Zuge eines Relaunch bin ich heute auf einen kuriosen Fehler gestoßen. Um einen Import von Events aus dem Google-Kalender umzusetzen, musste ich mir erst mal die Google PHP Client Library laden und ins Projekt setzen. Diese versucht natürlich erst mal einen per SSL verschlüsselten Authentifizierungs-Request abzusetzen. …


Beitrag lesen
02
JUL
15

ML Conference 2018

Autor*in: Tobias Pfannkuche


Technologie // Über den Tellerrand


„Your scientists were so preoccupied with whether or not they could, they didn’t stop to think if they should.“ Ian Malcolm, Jurassic Park „Machine Learning sucks. It really does.“ Dr. Pieter Buteneers, ML Conference 2018 „Don’t wait for perfection.“ Dr. Ulrich Bodenhausen, ML Conference 2018 Ein Bericht zur ML-Konferenz rund um das Thema Künstliche Intelligenz …


Beitrag lesen
27
JUN
18

JIT Grunt

Autor*in: Florian Müller


Technologie


Dieser Beitrag nimmt Bezug auf meinen vorherigen Beitrag zur Optimierung von Grunt. Wer diesen nicht kennt, wird mit diesem hier nicht viel anfangen können. Wer den Concurrent Task und dazu auch den Time-Grunt einsetzt, mag schon mal bemerkt haben, dass bei jedem Concurrent Task sämtliche Tasks geladen. Auf dem DEV dauert dies auch mal gerne 2 …


Beitrag lesen
08
FEB
17