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

Docker – Bereitstellung von Betriebs-Umgebungen über Container

Autor*in: Marc Kurzmann


Projekte // Technologie


Wie der eine oder andere Kollege bereits mitbekommen hat, war unser Informatik-Praktikant Lukas die vergangenen Wochen intensiv mit dem Thema Docker und der Möglichkeit zur effizienten Bereitstellung von Deployment-Umgebungen aus der Produktentwicklung heraus beschäftigt. Das Ergebnis kann sich sehen lassen: Es ist nun möglich mit minimalem Aufwand eine vollständige Betriebsumgebung einschließlich eines deployten Produkts eines …


Beitrag lesen
12
DEZ
14

Eine eigene kleine Root-CA für den localhost installieren

Autor*in: Benjamin Hofmann


Technologie


Es ist eigentlich ein Wunder, dass  es immer noch keine allgemein anerkannte Lösung dafür gibt, selbsterstelle Zertifikate auf dem lokalen Webserver auf einfache Art und Weise zu installieren. Zumindest ist mir keine bekannt und ich hatte heute das große Vergnügen genau dies tun zu müssen.


Beitrag lesen
02
AUG
18

Rückblick auf die WJAX 2017 in München

Autor*in: Regina Staller


Technologie


Am 09. Und 10. November dieses Jahres fand die WJAX in München statt und ich durfte zum ersten Mal daran teilnehmen. In diesem Blogartikel werde ich Euch einen kurzen Überblick über die Sessions, an denen ich teilgenommen habe geben. Die Themen der Sessions waren gemischt, es ging um Microservices, Continuous Delivery, Spring 5.0 und Spring …


Beitrag lesen
17
NOV
17