Dateisystemrechte
-
- vor 6 Jahren zuletzt von Benedikt Hofmann bearbeitet
-
-
- Keine Statusinformation
Inhaltsverzeichnis
Für einen reibungslosen Betrieb Ihrer BlueSpice-Installation benötigt der Webserver zwingend Schreibrechte auf mehrere Ordner des Dateisystems. Gleichwohl empfiehlt es sich, die Rechte für alle anderen Dateien und Ordner auf ein Minimum zu beschränken. Dieses Dokument zeigt Ihnen die betreffenden Ordner und die korrekte Verrechtung auf.
Hinweise zum Dokument
- Beim Editieren von Konfigurationsdateien mit einem Texteditor müssen die Dateien in UTF-8 Kodierung ohne BOM (Byte Order Mark) gespeichert werden.
- Der Platzhalter
<installpath-bluespice>
steht stellvertretend für den Pfad zu Ihrer BlueSpice-Installation, z.B.C:\bluespice\var\www
(Windows bei Beachtung der Dokumentation "Ordnerstruktur unter Windows") oder/var/www/bluespice
(Linux). - Der Platzhalter
<tomcat-webapps>
steht stellvertretend für den Pfad zum Webapps-Verzeichnis Ihres Tomcat-Servers, z.B.C:\Program Files\Apache Software Foundation\Tomcat 9.0\webapps
(Windows) oder/var/lib/tomcat9/webapps
(Linux).
Betreffende Ordner
Die Ordner, auf die Schreibrechte erforderlich sind, lauten:
<installpath-bluespice>
/cache<installpath-bluespice>
/images<installpath-bluespice>
/extensions/BlueSpiceFoundation/config<installpath-bluespice>
/extensions/BlueSpiceFoundation/data<installpath-bluespice>
/extensions/Widgets/compiled_templates (nur BlueSpice pro)
Verrechtung unter Windows/IIS
Vergeben Sie für diese Ordner "Ändern"-Rechte für den lokalen User "Jeder" (bei englischsprachigen Systemen "Everyone") sowie den lokalen User "IIS_IUSRS".
Verrechtung unter Linux
Hier können Sie wesentlich strikter verrechten, was auch zu empfehlen ist. Übergeben Sie das Verzeichnis <installpath-bluespice>
rekursiv dem User root (CHMOD für Files 644, CHMOD für Directories 755) und übergeben anschließend die oben genannten Verzeichnisse rekursiv dem User und der Gruppe, unter der der Apache Webserver läuft (Debian/Ubuntu bspw. jeweils "www-data").
Im folgenden stellen wir Ihnen ein Bash-Script zur Verfügung, das diese Arbeit für Sie mit nur einem Kommandozeilenbefehl übernimmt.
Legen Sie hierzu die Datei /usr/local/bin/setWikiPerm an und kopieren folgenden Code in diese:
#!/bin/bash WWW_USER="www-data" WWW_GROUP="www-data" WWW_HOME=`eval echo ~$WWW_USER` WWW_CFG=$WWW_HOME/.config if [ $# -eq 0 ]; then echo "You must enter the path of your MediaWiki installation." exit elif [ ! -d $1 ]; then echo "$1 does not exist or is no path." exit fi PATH=`echo "$1" | sed -e 's#/$##'` /usr/bin/find $PATH -type d -exec /bin/chmod 755 {} \; /usr/bin/find $PATH -type f -exec /bin/chmod 644 {} \; /bin/chown -R root:root $PATH pathes=( "$PATH/cache" \ "$PATH/images" \ "$PATH/_sf_instances" \ "$PATH/extensions/BlueSpiceFoundation/data" \ "$PATH/extensions/BlueSpiceFoundation/config" \ "$PATH/extensions/Widgets/compiled_templates" \ ) for i in "${pathes[@]}"; do if [ -d $i ]; then /bin/chown -R $WWW_USER:$WWW_GROUP $i fi done if [ ! -d $WWW_CFG ]; then /bin/mkdir $WWW_CFG fi /bin/chown -R $WWW_USER:$WWW_GROUP $WWW_CFG /usr/bin/find $PATH/extensions -iname 'create_pygmentize_bundle' -exec /bin/chmod +x {} \; /usr/bin/find $PATH/extensions -iname 'pygmentize' -exec /bin/chmod +x {} \; /usr/bin/find $PATH/extensions -name 'lua' -type f -exec /bin/chmod 755 {} \;
Ersetzen Sie bei Bedarf den Inhalt der beiden Variablen
WWW_USER="www-data" WWW_GROUP="www-data"
durch den für Ihre Distribution zutreffenden Benutzer und die zutreffende Gruppe.
Geben Sie dieser Datei anschließend den CHMOD 755. Nun können Sie auf der Kommandozeile mit dem Befehl
setWikiPerm <installpath-bluespice>
die komplette Verrechtung wie zuvor beschrieben automatisch vornehmen lassen.
Beachten Sie, dass bei Ausführung der update.php auf der Konsole die Rechte teilweise wieder verworfen werden können. Setzen Sie deshalb die Rechte entsprechend wieder neu nach "update.php".