Ich brauche mal einen Tipp oder Vorgehensweise zur Aktualisierung von owncloud auf externem Webspace
Situation: Bei meinen WebHoster strato habe ich owncloud 9.1.4 (mysql 5.6.35 und php 7.0) installiert. Das ging sehr einfach und sehr schnell. War wirklich ein Kinderspiel. Nun das eigentliche Problem: owncloud entwickelt sich sehr schnell weiter, so dass alle paar Monat auf eine neue Version aktualisiert werden muss. Das wird auch in der owncloud-Dokumentation empfohlen. Nach meinen Erfahrungen klappt die Aktualisierung am besten, wenn man die neuen Version ĂĽber occ upgrade installiert.
In der Dokumentation wird dazu der Befehl „sudo –u www-data php occ upgrade“ angegeben. Der Befehl sudo kann nun aber auf einem externen webspace nicht eingesetzt werden. Ich hab ja keine admin-Rechte.
Jetzt suche ich nach einer Möglichkeit, wie owncloud trotzdem aktualisiert werden kann.
Das Skript sollte als der Benutzer ausgeführt werden, der auch die PHP-Skripte für den Webserver ausführt. Bei Debian/Ubuntu ist das standardmäßig www-data und mit sudo kann man den php-Befehl asl dieser Nutzer aufrufen. Bei deinem Webhoster hast du in der Regel keine Root-Rechte (außer vserver oder ähnlicher Umgebung), häufig ist der Benutzer als der du dich einloggst auch der, der die PHP Skripte ausführt. Demnach könntest du das sudo -u www-data einfach weglassen und nur php occ upgrade
aufrufen. Wie kannst du den PHP-User herausfinden. Lade eine Datei in ownCloud hoch, dann schaue in data/username/pfad/zur/datei wer der Besitzer ist. In der Konsole kannst du auch herausfinden, welcher Nutzer du bist: whoami
Danke fĂĽr die RĂĽckmeldung.
Den Befehl sudo kann man im strato webspace nicht ausfĂĽhren.
User sind identisch.
php occ ohne sudo zu starten, habe ich auch versucht. Das wird mit der Fehlermeldung “This script can be run from the command line only” gestoppt. Offenbar lässt sich das Script nicht von der Kommandozeile aus starten.
Siehe mein Rat in einem anderen Post in dem Du geposted hattest [1]. Das Skript kann von der command line ausgeführt werden, nur hat hier Strato höchst wahrscheinlich wieder irgendeine komische PHP Konfiguration / Umgebung. Bei solchen Problemen kann ownCloud nicht weiterhelfen, da ist der Support Deines Hosters oder eine Support Community speziell für Strato gefordert.
Aber so etwas in der Art muss es sein. Momentan wird der occ Befehl mit der PHP binary ausgeführt, welche eigentlich nur für den Webserver gedacht ist. Aus dem Grund auch die “This script can be run from the command line only” Meldung.
Ist leider etwas spezielles, was so in der Art nicht auf einer Default PHP Installation vorkommt. Also bleibt wohl nur der Strato support.
Updates führe ich seit Jahren “zu Fuß”, - fast - analog zur Beschreibung “Manual Installation on Linux” im Administration manual durch.
IN meinem Verzeichnis download fĂĽhre ich den Befehl
wget download.owncloud.com
aus. x.y.z musst Du durch die Version ersetzten die Du laden willst.
Dann wird das geladene Archiv, wie nun auch im Manual beschrieben, mittels dem Befehl
tar -xjf owncloud-x.y.z.tar.bz2
ausgepackt. Der INhalt von “owncloud” wird dann ins Ziel copiert
Man kann - meistens - minor Releases “drüber” kopieren. Klappt aber nicht immer.
Der sicherere Weg, und bei major updates eh erforderlich, ist im Ziel-Verzeichnis allen Inhalt bis auf die Verzeichnisse data und config zu löschen.
Bitte 3mal hinschauen ob data und config nicht vom Löschen erwischt wird!!!
Nun per WEB die Installation aufrufen und das angebotene Update starten.
In der Regel bricht das bei “viel zum Updaten” irgendwann ab. Da schlägt dann der Script-timer bei Strato zu.
Einfach in config.php im config-Verzeichnis per vi den Parameter maintenance auf false setzen und erneut per WEB die Installation aufrufen. Das Ganze nötigenfalls mehrfach wiederholen. Irgendwann ist alles getan.
Von Hand auch die Regel beachten: Ein major update immer nur einen Schritt weiter installieren. Dazu vorher die letzte Version des aktuellen Zweiges “davor” installieren.
Beispiel: Man rennt 9.1.1 und möchte auf 9.2.0. Dazu erst 9.1.x (letzte Version) installieren.
Nur so scheint mir sichergestellt, dass auch die evtl. notwendigen Updates in der Datenbankstruktur auch durchgefĂĽhrt werden.
Mit etwas Übung sollte das Prozedere in 30 Minuten “erledigt” sein.
PS: Auf die Antwort des Strato-Supports zur Möglichkeit “php occ” laufen zu lassen bin ich gespannt…
vielen Dank fĂĽr Deine Darstellung. Werde ich auf jeden Fall testen.
mit dem Umsetzenen des Parameters auf false, kann man wieder ein neues Update anwerfen?
Wenn sich strato mal melden sollte, setze ich die Inhalte ins forum Im MOment bin ich da eher skeptisch.
Deine Methode klappt prima. Hab ich zweimal durchgespielt.Passt. Danke!
strato hat sich gemeldet, aber deren Aussage hilft erst mal nicht weiter. Anmeldung per ssh und dann start mit “php scriptname”. Genau das funktioniert ja nicht.
Mal abwarten.
Du kannst das obige auch ggf. mal ausfĂĽhren. Sollte da etwas anderes als cli zurĂĽck kommen ist das eine weiterfĂĽhrende Info, welche an den Strato support gegeben werden kann.
Auf dem Weg hat das Update bei strato dann auch geklappt. Ich habe aber noch eine Installation auf einem raspberry, die ich schon länger im Einsatz habe. Da ist die neue Version per web-Update gescheitert. Ich möchte gern sicher sein, dass es klappt.
Ok, habe eine Antwort von strato. Nutzung von “php occ” geht nur mit admin-Rechte und die wiederum nicht auf einem webspace. Geht nur auf einem virtuellen Server, den mir der Support natürlich sofort verkaufen wollte. Also keine Lösung von strato.
ich habe meine owncloud auch bei Strato laufen. Leider bin ich noch unerfahrener. Ich hoffe Ich könnt mich beim Wissensaufbau etwas unterstützen:
Generell dachte ich, dass ich Updates einfach über die Weboberfläche (Updater) machen könnte? Drücke ich allerdings auf „Update aufrufen“ erhalte ich folgende Meldung: „cURL error 7:“.
Ich bekomme ĂĽber Owncloud folgende Anleitung: ownCloud Documentation Overview
Ich bin mir allerding nicht ganz sicher was die Anleitung beschreibt.