it-swarm.com.de

Wie gebe ich Apache Zugriff auf eine Samba-Freigabe?

Ich verwende einen Webserver und der Ordner public_html befindet sich auf einem von Samba unter Ubuntu Server 10.04 freigegebenen Windows-Netzwerklaufwerk.

Ich habe Apache2 VH so eingestellt, dass es auf den Ordner zeigt, und es funktioniert großartig. Wenn meine Drupal 6-Installation versucht, die Standarddateien zu erstellen, kann sie jedoch nicht an die erforderlichen Speicherorte schreiben.

Nun, weil dies nur eine Entwicklungsmaschine ist; Ich habe www-data Benutzer und Gruppe zum visudo mit ALL=(ALL) ALL hinzugefügt

Ich habe auch die httpd.conf -Datei folgendermaßen geändert:

<Directory /media/samba>
      Order Allow,Deny
      Allow from all
</Directory>

Wenn ich den Benutzernamen envvars in Benutzername mit Administratorrechten ändere, funktioniert dies einwandfrei. Gibt es etwas, das ich mit chmod tun muss, um www-data zum Laufen zu bringen?

5
Kevin

Sie müssen Ihre Samba-Mount-Konfiguration so ändern, dass Sie dem Benutzer und der Gruppe www-data die Berechtigung geben, darauf zu schreiben. Möglicherweise können Sie bestimmte Verzeichnisberechtigungen festlegen, andernfalls müssen Sie jedoch den Schreibzugriff auf das gesamte Laufwerk festlegen (was aus Sicherheitsgründen nicht möglich ist).

Ich persönlich würde empfehlen, nfs anstelle von Samba-Freigaben für die Netzwerkspeicherung und die Verwendung von ext3 oder einem anderen voll funktionsfähigen Dateisystem zu verwenden.

http://www.cyberciti.biz/tips/how-do-i-set-permissions-to-samba-shares.html

https://help.ubuntu.com/community/Samba/SambaClientGuide

http://www.mattvanstone.com/2006/06/automatically_mounting_smb_sha/