Ubuntu-Dateiberechtigungen

Ubuntu-Dateiberechtigungen

Ich habe Probleme mit den Dateiberechtigungen auf einem Ubuntu-Server. Ich verwende WinSCP, um Dateien auf den Server zu verschieben. Der Server funktioniert einwandfrei, aber nach einer Weile scheint es, als hätte ich keine Berechtigung mehr, eine Datei zu löschen.

Ich verbinde mich mit dem Server über ein Konto namenssvadmin, und das Stammverzeichnis des Apache-Servers ist/var/www. Jede Website hat ihr eigenes Verzeichnis darunter - d.h.

/var/www/site1
/var/www/site2

Dies ist die Ausgabe des Befehls ls ...

cd /var/www
ls -al
drwxr-sr-x   4  svadmin  svadmin  4096 2009-06-12 14:45 .
drwxr-xr-x  15  root     root     4096 2009-05-05 15:47 ..
drwxr-sr-x   4  svadmin  svadmin  4096 2009-06-12 15:15  site1
drwxr-sr-x   4  svadmin  svadmin  4096 2009-06-12 15:15  site2

Nach meinem Verständnis bedeutet dies, dass der Verzeichnisbesitzer über Lese-/Schreib-/Ausführungsrechte verfügt? Wenn ich mich mit dem Svadmin-Konto mit dem Server verbinde, sollte ich dann nicht in der Lage sein, Dateien in /var/www/site1 oder /var/www/site2 zu überschreiben oder zu löschen?

Ich bin mit den Datei-/Verzeichnisberechtigungen unter Linux nicht sehr vertraut und habe daher Schwierigkeiten herauszufinden, was ich tun soll. Für jede Hilfe wäre ich sehr dankbar!

Weitere Informationen: (danke für die schnellen Antworten!)

Ausgabe von ls -al für /var/www/site1

drwxr-sr-x 4 svadmin svadmin 4096 2009-06-12 15:15 .
drwxr-sr-x 4 svadmin svadmin 4096 2009-06-12 14:45 ..
-rw-r--r-- 1 svadmin svadmin 157  2009-05-12 13:23 error.php
-rw-r--r-- 1 svadmin svadmin 158  2009-05-12 13:23 .htaccess
-rw-r--r-- 1 svadmin svadmin 142  2009-05-12 13:23 index.php
drwxr-sr-x 2 svadmin svadmin 4096 2009-05-12 18:40 libraries

Fehlermeldung beim Versuch, die Datei zu löschen:

rm admin.php
rm: cannot remove 'admin.php' : Read-only file system

Noch mehr Infos Nur um einige möglicherweise relevante Informationen hinzuzufügen … bis gestern Nachmittag funktionierte alles. Zu diesem Zeitpunkt entfernte ein Kollege das SAN, auf dem sich die virtuelle Maschinendatei befand, und der Webserver wurde nicht gerade reibungslos heruntergefahren.

Antwort1

Dies ist kein Berechtigungsproblem. Die beiden Hinweise sind:

  • rm: „admin.php“ kann nicht entfernt werden: Nur-Lese-Dateisystem
  • bis gestern Nachmittag hat alles funktioniert. Dann hat ein Kollege das SAN entfernt, auf dem sich die virtuelle Maschine befand, und der Webserver wurde nicht gerade reibungslos heruntergefahren.

Irgendwie wurde das Dateisystem mit /var/www auf "schreibgeschützt" zurückgesetzt, wahrscheinlich als das SAN verschwand. Die Ausgabe des mountBefehls sollte dieses Dateisystem mit einem (ro)-Flag am Ende identifizieren.

Die Lösung besteht darin, herauszufinden, warum es passiert ist, sicherzustellen, dass es behoben ist, und das Dateisystem RW mit diesem Befehl erneut zu mounten:

mount -oremount,rw $filesystem

Antwort2

Wenn Sie rwx in einem Verzeichnis haben, bedeutet das, dass Sie die Verzeichnisdatei bearbeiten können, was dem Entfernen und Hinzufügen von Dateien gleichkommt. Das Bearbeiten von Dateien hängt von ihren individuellen Berechtigungen ab. Wie sieht ein ls -l eines der Unterverzeichnisse aus?

Antwort3

Ihr Problem ist der klebrige Teil. Beachten Sie, dass die Dauerwellen dort nicht sind drwxr-xr-x, sondern sind drwxr-sr-x. Wikipedia sagt:

Die häufigste Verwendung des Sticky Bits findet sich heute in Verzeichnissen. Wenn es gesetzt ist, können Elemente im Verzeichnis nur vom Eigentümer des Elements, dem Eigentümer des Verzeichnisses oder dem Superuser umbenannt oder gelöscht werden. Ohne gesetztes Sticky Bit kann jeder Benutzer mit Schreib- und Ausführungsberechtigung für das Verzeichnis enthaltene Dateien umbenennen oder löschen, unabhängig vom Eigentümer. Normalerweise wird dies im Verzeichnis /tmp gesetzt, um zu verhindern, dass normale Benutzer Dateien anderer Benutzer löschen oder verschieben. Diese Funktion wurde 1986 in 4.3BSD eingeführt und ist heute in den meisten modernen Unix-Systemen zu finden.

Dateien können daher nur von der Gruppe geschrieben und gelöscht werden, die sie ursprünglich dort abgelegt hat.

verwandte Informationen