Ubuntu Webserver: Rechtevergabe wird nicht übernommen
lima-city → Forum → Die eigene Homepage → Homepage Allgemein
angeben
apache
arbeiten
bekommen
code
datei
ftp
glauben
gruppe
http
kopieren
minute
ordner
partition
problem
server
spielerei
url
versuchen
verzeichnis
-
Ein neues Problem aus der Reihe Ubuntu und Webserver.
Da ich mich jetzt durch gerungen habe, Apache zu installieren, da das mit XAMPP nicht so hingehauen hat, stoße ich nun eigentlich auf das gleiche Problem, wie im oben genannten Thread. Allerdings ist mir jetzt das Problem bewusster:
Durch die Eingabe folgender Zeile schaffe ich es die Fehlermeldung "Zugriff verweigert! Der Zugriff auf das angeforderte Objekt ist nicht möglich [...]" wegzubekommen:chmod 755 * -R
Dadurch wird aber schon klar, dass es ein Problem mit der Rechteverwaltung gibt. Denn, wenn ich nun einen neuen Ordner in das mit den rechten versehene Verzeichnis kopiere, werden diese Rechte nicht übernommen. Dies wird deutlich, wenn ich WordPress installiert habe und nun ein Theme benutzen will, dass ich in einen Ordner lege. Dieses Theme müsste dann im Backend erkannt werden, wird es aber nicht. Wenn ich die Rechte nocheinmal rekursiv vergebe, klappt es.
Gibt es eine Möglichkeit, dass dies nicht nur eine Zeitweise-Änderung der Rechte ist, sondern, dass die bestehen bleibt? -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Gibt es eine Möglichkeit, dass dies nicht nur eine Zeitweise-Änderung der Rechte ist, sondern, dass die bestehen bleibt?
Deine Rechte sind nicht zeitlich begrenzt. Das Problem besteht darin, dass cp die Rechte des zu kopierenden Ordners/der zu kopierenden Datei mitkopiert. Du musst dann praktisch die alten Rechte der Datei wieder überschreiben. Da man dieses Problem AFAIK nicht umgehen kann, musst du halt nach jedem kopieren (aber z.B. nicht nach dem erstellen von Dateien) einen Chmod ausführen. -
Schreib dir doch nen alle 5 Minuten laufenden Cron Job der die Rechte anpasst, dann hast du spätestens nach 5 Minuten immer die passenden Rechte, wenn sie gerade stimmen ist es auch gut, es wird ja nichts geändert.
Das Verhalten ist allerdings Mysteriös, du kannst jedoch die Rechtemaske die neue Dateien und Verzeichnisse bekommen irgendwo festlegen, ich steh aber grad auf dem Schalch wie genau...umask vielleicht
Im übrigen IST apache ein "richtiger" Webserver, bei XAMPP hast du auch keinen anderen.
Beitrag zuletzt geändert: 10.8.2009 18:26:14 von fatfox -
fatfox schrieb: Schreib dir doch nen alle 5 Minuten laufenden Cron Job der die Rechte anpasst, dann hast du spätestens nach 5 Minuten immer die passenden Rechte, wenn sie gerade stimmen ist es auch gut, es wird ja nichts geändert.
Das mit dem Cronjob hat ein paar Probleme:
1.) Ich wüsste nicht wie man das "programmiert", dazu habe ich zu wenig Ahnung
2.) Wie belastet das mein System, wenn das alle 5 Minuten ausgeführt wird? Und es bringt ja nichts, wenn es ausgeführt wird, obwohl ich vllt. was ganz anderes mache und gar nicht den "Webserver" in Anspruch nehme.
3.) Es ist auch auch uneffektiv. Wenn ich einen Ordner einfüge, möchte ich, dass er sofort verfügbar ist, kann dann nicht 5 Minuten warten.
fatfox schrieb: Das Verhalten ist allerdings Mysteriös, du kannst jedoch die Rechtemaske die neue Dateien und Verzeichnisse bekommen irgendwo festlegen, ich steh aber grad auf dem Schalch wie genau...umask vielleicht
Das hört sich viel versprechend an, allerdings habe ich auch nichts zu "unmask" oder "Rechtemasken" gefunden. Wo könnte ich noch suchen. Ich hab mal bei ubuntuusers zu chmod etwas gelesen: Bekommen auf dem Webspace Ordner und Dateien verschiedene Rechte?
fatfox schrieb: Im übrigen IST apache ein "richtiger" Webserver, bei XAMPP hast du auch keinen anderen.
Ja, mich hat lediglich der Start von XAMPP gestört. Jedesmal den Befehl auszuführen zum Starten und dann gab es ja das Rechteproblem. Was ich ja jetzt leider auch noch habe. -
gib mal bitte
ein und poste die Ausgabe.umask
-
Hm. Komisch im Manual steht nichts dazu, trotzdem kommt das raus:
0022
-
Ok, das ist jetzt so:
Dateien haben unter Linux standardmäßig die Rechte 666 und Verzeichnisse haben standardmäßig 777, die umask sorgt jetzt dafür das diese standardmäßigen Rechte automatisch eingeschränkt werden:
Aus 666 - 022 wird:
6 - 0 = 6
6 - 2 = 4
6 - 2 = 4
Aus 777-022 wird:
7 - 0 = 7
7 - 2 = 5
7 - 2 = 5
Standardrechte für Dateien sind also: 644 (rw-r--r--)
Standardrechte für Verzeichnisse sind also 755(rwxr-xr-x)
Versuche mal testweise:umask 011
Details findest du hier: http://dozent.maruweb.de/material/benutzer.shtml
Beitrag zuletzt geändert: 10.8.2009 22:48:04 von fatfox -
Ok, ich bin jetzt zum public_html Ordner gewechselt, von dort aus habe ich dann unmask 011 ausgeführt, was bedeutet:
Ordner: 766
Datei: 655
Gilt das jetzt nur für diesen Ordner oder auch für alle Unterordner. Das Problem besteht nämlich noch.
Wenn ich
nutze, wird ja alles (sowohl Ordner als auch Dateien) die Rechte 755 gegeben?chmod 755 * -R
-
Die UMASK gilt nur für neue Dateien und Ordner, bereits bestehende können davon nicht beeinflusst werden.
Die UMASK ist eine Konfigurationsvariable der Shell, im Moment richtest du keinen Schaden ann denn nach einem Neustart sollte die UMASK wieder 022 sein. Die UMASK gilt global und ist nicht auf ein Verzeichniss begrenzt, wohl aber können unterschiedliche Benutzer mit einer unterschiedlichen UMASK arbeiten.
Um das zu testen müsstest du jetzt mal einen neuen Ordner und eine neue Datei darin anlegen und versuchen ob du darauf zugreifen darfst.
Beitrag zuletzt geändert: 10.8.2009 23:17:08 von fatfox -
fatfox schrieb: Um das zu testen müsstest du jetzt mal einen neuen Ordner und eine neue Datei darin anlegen und versuchen ob du darauf zugreifen darfst.
Ja, das funktioniert. Da lässt sich das ganze auch direkt per Browser aufrufen.
Was mich allerdings dann wundert, wenn ich einen Ordner in plugins einfüge, dann müsste ich den über das WP Backend ja sehen und das Plugin aktivieren können. Das geht allerdings immernoch nicht. Erst wenn ich dann wieder die Rechte rekursiv vergebe, steht der Ordner mit Dateien auch im Backend zur Verfügung. -
Jetzt müssen wir uns über die Begrifflichkeiten klar werden:
"einfügen" heißt du nimmst Ihn von woanders und kopierst Ihn in das Serververzeichniss (und löschst ihn an der ursprünglichen Stelle) ?
Wann immer du etwas kopierst, kopierst du auch die Rechte, du kannst allerdings die Umask beim kopieren mit angeben (glaube ich) -
werktags schrieb:
Wenn ich
nutze, wird ja alles (sowohl Ordner als auch Dateien) die Rechte 755 gegeben?chmod 755 * -R
Tag!
Also soviel ich weiß, ist das "*" völlig unnötig.
angenommen du hast den ordner /var/www dies, und auch ALLE unterordner und dateien willst du mit dem chmod 777 versehen, dann machste das ganz einfach mit dem befehl:
chmod 777 -R /var/ww
Zumindest ging es bei mir immer so. Hatte damit nochnie probleme.
Grüße -
fatfox schrieb: "einfügen" heißt du nimmst Ihn von woanders und kopierst Ihn in das Serververzeichniss (und löschst ihn an der ursprünglichen Stelle) ?
Also das ist ja so aufgebaut, das Apache den public_html Ordner [/home/fabian/public_html] nimmt und man somit im Browser die URL http://localhost/~fabian/ aufrufen kann.
Jetzt hab ich einen Ordner von einer Partition kopiert und diesen in das Verzeichnis eingefügt:
/home/fabian/public_html/wordpress/wp28/wp-content/plugins
Dabei wurde der Ordern nur kopiert und eingefügt, nicht ausgeschnitten. Er existiert also noch an der ursprünglichen Stelle.
Idee: Hat das was mit dem Kopieren von der Partition zu tun, da das mit einem Ordner den ich frisch auf dem Desktop angelegt hatte, geklappt hat?rick1993 schrieb: Also soviel ich weiß, ist das "*" völlig unnötig.
Was es mit dem Stern auf sich hat, weiß ich nicht mal.
angenommen du hast den ordner /var/www dies, und auch ALLE unterordner und dateien willst du mit dem chmod 777 versehen, dann machste das ganz einfach mit dem befehl:
chmod 777 -R /var/ww
Das Vergeben der Rechte ist eigentlich kein Problem. -
Es ist wie ich sage:
Wenn du etwas kopierst (cp) (von wo auch immer) kopierst du alles, inklusive der Rechte.
Wenn die auf deiner Partition wo die Daten herkommen falsch sind werden sie auch am Zielort falsch sein.
Wenn du aber einen neuen Ordner anlegst (mkdir) wird der (Dank unserer geänderten UMASK) mit ausreichenden Rechten erstellt.
Der Stern ist in der Tat unnötig, aber das juckt hier mal gerade nicht
Beitrag zuletzt geändert: 10.8.2009 23:48:45 von fatfox -
Idee: Hat das was mit dem Kopieren von der Partition zu tun,
Ja, das versuchen wir dir hier schon die ganze Zeit zu erklären. Wahrscheinlich hast du auf der Partition andere Rechte, und wenn du nun etwas von der Partition in deinen public_html __kopierst__ werden die Rechte mitkopiert. D.h. du musst einen Chmod ausführen um wieder deine gewünschten Rechte zu bekommen. Du könntest jetzt nätürlich gleich dem Ordner auf der Partition von dem du kopierst die Rechte 755 geben, weil du dann ja die richtigen Rechte mitkopieren würdest, aber ich weiß nicht ob das so Sinn der sache ist wenn dort jeder lesen darf.
Was die umask-Spielereien angeht: Ich glaube fatfox hat noch nicht genau genug beton, dass du dann aber aufpassen musst, was du in dieser Session tust. Denn wenn plötzlich jeder überall alle Rechte bekommt, dann wird aus einem Linuxsystem schnell ein Windowssystem . Das selbe gilt für Spielereien wie chmod 777
Wann immer du etwas kopierst, kopierst du auch die Rechte, du kannst allerdings die Umask beim kopieren mit angeben (glaube ich)
Das hatte ich auch schon vermutet, aber das man von cp spuckt dazu nichts aus.
lg
€dit: typo -.-
Beitrag zuletzt geändert: 10.8.2009 23:57:07 von ketchupfleck -
ketchupfleck schrieb: Was die umask-Spielereien angeht: Ich glaube fatfox hat noch nicht genau genug beton, dass du dann aber aufpassen musst, was du in dieser Session tust. Denn wenn plötzlich jeder überall alle Rechte bekommt, dann wird aus einem Linuxsystem schnell ein Windowssystem . Das selbe gilt für Spielereien wie chmod 777
Natürlich mass man dan abwägen was man am ehesten benötigt, Bequemlichkeit oder Sicherheit, ich hatte ursprünglich eine zu restriktive einstellung vermutet daher auch die Idee, mittlerweile ist aber klar das das Problem an den zu restriktiven Rechten der Quelldateien liegt und da hast du ja schon das korrekte vorgehen gepostet
Das hatte ich auch schon vermutet, aber das man von cp spuckt dazu nichts aus.
Wann immer du etwas kopierst, kopierst du auch die Rechte, du kannst allerdings die Umask beim kopieren mit angeben (glaube ich)
Das ging mir ähnlich...höchst mysteriös...*g*
-
Wenn ich ehrlich bin, bin ich mit der bisherigen Lösung nicht wirklich zufrieden. Ich lad die Dateien ja auch auf den Webspace (auch von der Partition) und da gibt es solche Probleme nicht!
Aber was ist der Unterschied? Wieso stimmen auf dem Webspace die Rechte und bei meinen lokalen Installation nicht?
[Oder steh ich gerade auf dem Schlauch?] -
HTTP/FTP und cp sind in der Tat 2 komplett verschiedene Sachen. Bei HTTP und FTP werden zum Beispiel keine Rechte "kopiert", sondern die Rechte werden je nach Konfiguration des Servers vergeben.
Wenn dir Chmod wirklich zuviel ist und du das selbe 'feeling' haben willst wie als würdest du auf einem 'richtigen' Webserver arbeiten, ist denke ich das einfachste, einen FTP-Server mit einem entsprechendem Benutzer und entsprechenden Rechten, welcher als FTP-Folder deinen lokalen Webspace hat, einzurichten. Wenn du dies machen willst kann ich dir gproftpd empfehlen. Das ist eine GUI zu dem FTP-Server proftpd und sollte dich eigentlisch relativ schnell und einfach zu deinem ziel führen. (Zumindest schneller als müsstest du dich stundenlang in die Config von proftpd einarbeiten)
Beitrag zuletzt geändert: 11.8.2009 2:38:18 von ketchupfleck -
Ok, danke! Der Ansatz gefällt mir schon besser
Also ich hab mich mal etwas eingelesen. Allerdings finde ich dort recht wenig zur Benutzung der GUI.
Im Prinzip weiß ich jetzt nicht weiter. Ich brauche für das FTP-Programm ja:
- Server [gproftp zeigt als Server Adress: 0.0.0.0 an]
- Port: [21]
- Benutzer
- Passwort
Was soll ich als Server Adresse eintragen?
Beim Einrichten eines Benutzers, muss ich auch eine Gruppe angeben, aber welche? Und ich soll ein Verzeichnis hinzufügen. Das müsste ja das Verzeichnis sein, wo auch die Dateien hinkommen [/home/fabian/public_html] ? -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage