Wer eine ownCloud-Installation sein Eigen nennt, kennt die Probleme bei einem Update dieser. Da ich von der Updater App und generell von automatisierten Updates nicht sonderlich viel halte, update ich meine Instanz jedes mal selbst.
Das bedeutet für mich: Sämtlichen Inhalt des ownCloud-Root Ordners zu löschen. Davon ausgenommen natürlich die Ordner: config und data
Einfaches überschreiben ist übrigens nicht empfohlen, da ownCloud zusätzlich die Datenintegrität überprüft. Das bedeutet: Alte, nicht mehr verwendete Dateien von älteren Versionen werden erkannt, und können möglicherweise für Probleme sorgen. Und wer hat schon gerne einen unaufgeräumten Webserver mit Daten die gar nicht benötigt werden? ¯\_(ツ)_/¯
Sollte mal der Login nach einem Update/Upgrade nicht mehr klappen oder gar eine weiße Seite im Browser angezeigt werden, liegt es zumeist an den Berechtigungen des Ordners. Ich kenne es überwiegend von diversen Typo3-Installationen ( ͡° ͜ʖ ͡°) Aus diesem Grund benutze ich ganz gerne ein kleines Script, welches mir die korrekten Dateirechte für meine Installation setzt.
Zu ändern sind nur die beiden Einträge ocpath und ocdata. Dort muss jeweils der Root Ordner der ownCloud Installation angegeben sein, bei ocdata noch zusätzlich das Verzeichnis, in welchem die Dateien liegen. Als Beispiel habe ich den Ordnerpfad einer meiner Installationen angegeben. Der Benutzer www-data ist ursprünglich ein speziell für Apache eingerichteter Benutzer und wird nur für Webserver genutzt. In meinem Fall wird er auch für nginx genutzt.
Das Script befindet sich an einem beliebigen Ort mit dem Namen runme.sh. Um es ausführbar zu machen, fehlt nun nur noch ein chmod +x runme.sh
Letztendlich wird es mit ./runme.sh
ausgeführt.
#!/bin/bash
ocpath='/home/www/html/owncloud'
ocdata='/home/www/html/owncloud/data'
htuser='www-data'
htgroup='www-data'
rootuser='root'
printf "Creating possible missing Directories\n"
mkdir -p $ocdata
mkdir -p $ocpath/updater
printf "chmod Files and Directories\n"
find ${ocpath}/ -type f -print0 | xargs -0 chmod 0640
find ${ocpath}/ -type d -print0 | xargs -0 chmod 0750
find ${ocdata}/ -type f -print0 | xargs -0 chmod 0640
find ${ocdata}/ -type d -print0 | xargs -0 chmod 0750
printf "chown Directories\n"
chown -R ${rootuser}:${htgroup} ${ocpath}/
chown -R ${htuser}:${htgroup} ${ocpath}/apps/
chown -R ${htuser}:${htgroup} ${ocpath}/config/
chown -R ${htuser}:${htgroup} ${ocdata}/
chown -R ${htuser}:${htgroup} ${ocpath}/updater/
chmod +x ${ocpath}/occ
printf "chmod/chown .htaccess\n"
if [ -f ${ocpath}/.htaccess ]
then
chmod 0644 ${ocpath}/.htaccess
chown ${rootuser}:${htgroup} ${ocpath}/.htaccess
fi
if [ -f ${ocdata}/.htaccess ]
then
chmod 0644 ${ocdata}/.htaccess
chown ${rootuser}:${htgroup} ${ocdata}/.htaccess
fi
0
0 comments on “ownCloud: Berechtigungen und Schreibrechte”Add yours →