Die eigene Cloud: Nextcloud Hub Installation auf einer Synology DiskStation mit DSM 6.2

Synology bietet zwar eine eigene Cloudlösung, die CloudStation, die ist aber bei weitem nicht so umfangreich und flexibel wie Nextcloud. Sei es Kalender- und Kontaktsynchronisation oder die Apps und Weboberfläche, es gibt viele Gründe für Nextcloud auf einer DiskStation. Der Artikel erklärt Schritt für Schritt, wie ihr Nextcloud auf einer DiskStation installiert.

Achtung

Nextcloud 18.0.0 weißt noch einige Bugs auf und ist für den produktiven Einsatz noch nicht geeignet.

Vorbereitung

  1. Bevor wir anfangen können, kontrolliert ob die Web Station läuft.
    Wichtig: Nutzt ihr nginx als Webserver, müsst Ihr in der WebStation unter Allgemeine Einstellungen HTTP-Backend-Server auf Apache HTTP Server 2.4 umstellen. Nextcloud läuft unter nginx nicht ohne diesen vorher zu konfigurieren. Bisher ist aber keine funktionierende Konfiguration für Synology in der Community vorhanden. Ihr könnt für Nextcloud einen vhost einrichten, der den Apache nutzt, dann könne ihr den Rest eurer DS wieder auf nginx umstellen.
  2. Installiert folgende Pakete im Paket Zentrum:
  3. Erstellt einen neuen gemeinsamen Ordner als Speicherort für die Daten. Nextcloud speichert die Daten standardmäßig im data-Ordner unter /web/Nextcloud. Nextcloud empfiehlt aus Sicherheitsgründen den Speicherort außerhalb des /web Ordners anzulegen. Das erleichtert auch ein späteres Upgraden von Nextcloud. Auf den gemeinsamen Ordner sollte niemand sonst Zugriff haben und auch als Administrator solltet ihr dort nur Änderungen vornehmen wenn Sie eure Nextcloud-Installation betreffen. Diese Änderungen solltet ihr dann aber über putty als root machen, da sich sonst die Ownership ändert und Nextcloud nicht mehr auf den Ordner zugreifen kann.
  4. Damit PHP auch auf den gemeinsamen Ordner zugreifen kann, muss der Pfad in open_basedir eingetragen werden. Öffnet die WebStation und geht in die PHP Einstellungen. Fügt dort den Pfad am Ende des open_basedir Feldes ein. Der : trennt die einzelnen Pfade.
  5. Aktiviert den SSH Service unter Terminal & SNMP im Control Panel.
  6. Öffnet putty und verbindet euch auf die DS. Loggt euch als Administrator ein. Um das Script als root auszuführen gebt sudo –i ein und drückt Enter. Gebt erneut euer Administratorpasswort ein. Gebt folgende 2 Befehle ein:

    Ansonsten kann Nextcloud nicht auf den Ordner zugreifen. Habt ihr die Option aktiviert, damit der Ordner für unbefugte Benutzer ausgeblendet wird, solltet Ihr den Ordner in der File Station nicht mehr sehen.

Installation

  1. Zuerst müssen wir eine Datenbank und eine Nutzer anlegen. Früher wurde das vom Setup selbst gemacht, das scheint sich aber geändert zu haben.
    1. Loggt euch mit dem root-User in PHPMyAdmin ein. Erstellt einen neuen Benutzer, dieser sollte ausschließlich von Nextcloud genutzt werden und auch nur Zugriff auf die Nextcloud-Datenbank haben. Gebt im Reiter „SQL“ folgenden Befehl ein

      Nach alter Konvention beginnt der User für Nextcloud mit oc_ (das stammt noch aus Zeiten bevor Nextcloud aus Owncloud hevorgegangen ist) der Name kann aber frei gewählt werden. Benutzt ein Passwort, das wirklich sicher ist, dabei ist die Länge wichtig und weniger welche Zeichen ihr benutzt. Ihr müsst den Benutzer und das Passwort nur einmal während der Installation eingeben.
    2. Jetzt erstellt ihr die Datenbank und gebt dem Nutzer die Rechte dafür.

      Die Datenbank muss aber nicht Nextcloud heißen.
  2. Ladet die neueste Version von Nextcloud als .zip oder .tar hier herunter.
  3. Ladet das zip-File auf deine Diskstaion hoch und extrahiere es in den /web Ordner.
    Sicherheitshinweis: Ihr könnt den Nextcloud-Ordner umbenennen. Das Verhindert, dass er von Crawlern gefunden wird, die web roots nach Standardbezeichnungen durchsuchen.
  4. Ändert die Rechte des Nextcloud-Ordners. Erstellt dazu am besten ein Script (Textdatei mit .sh Endung) mit folgendem Inhalt irgendwo auf der DiskStation:
  5. Öffnet putty und verbindet euch auf die DS. Loggt euch als Administrator ein. Um das Script als root auszuführen gebt sudo –i ein und drückt Enter. Gebt erneut euer Administratorpasswort ein. Führt das Script nun mit sh /volume1/PfadZumScript/Installationsberechtigung.sh aus. Anstelle des Scripts könnt ihr auch Zeile für Zeile in die Shell eingeben, das ist aber mühsam, außerdem müsst ihr die Rechte für ein Update wieder ändern.
    Hinweis: Die Rechte sind nur für die Installation gedacht, für einen sicheren Betrieb sollten die Rechte so strikt wie möglich gehalten werden. Lest dazu hier nach wie ihr die Rechte nach der Installation anpasst.
  6. Öffnet Nextcloud im Browser (z.B. mydomain.com/mycloud oder myDS/myCloud). Die Adresse die Ihr hier benutzt wird während der Installation als erlaubte Domain eingetragen. Wollt ihr Nextcloud von anderen Domains aus erlauben müsst ihr diese später in der config.php eintragen. Das ist der Fall wenn ihr z.B. die Cloud später über eine eigene Domain bzw. DynDNS erreichen wollt, aber bei der Installation den lokalen Namen oder die lokale IP der DiskStation benutzt.

    Nextclud Hub Installation im Browser
    Nextclud Hub Installation im Browser
  7. Den Fehler könnt ihr einfach ignorieren. Gebt einen Benutzernamen und ein Passwort für den Nextcloud-Admin ein (der NC-Admin hat nichts mit dem Admin der DiskStation zu tun). Unter Speicher & Datenbank > Datenverzeichnis ist standardmäßig /volumeX/web/nextcloud/data eingetragen, gebt den Pfad zum gemeinsamen Ordner an, den ihr vorhin angelegt habt.
  8. Je nachdem wie ihr das PHP-Profil konfiguriert hab, stehen euch mehrere Datenbanken zur Auswahl. MariaDB ist die von Nextcloud und der Community empfohlene Wahl. Gebt die Zugangsdaten für den User ein, den ihr in Schritt 1 angelegt habt.
  9. Gebt auch die Datenbank an, die ihr in Schritt 1 angelegt habt.
  10. ACHTUNG: Als Datenbank-Server ist localhost vorgegeben. Das funktioniert nur für MariaDB 5, für MariaDB 10 müsst ihr localhost durch 127.0.0.1:3307 ersetzen.

    Datenbankdetails
    Datenbankdetails
  11. Neu seit Nextcloud 18 ist die Option, empfohlene Apps zu installieren. Wollt Ihr die integrierte Collaboration-Lösung OnlyOffice nutzen, muss das die gleichnamige App installiert sein. Ihr könnt die Apps an dieser Stelle aber auslassen und OnlyOffice nachträglich installieren.

    Empfohlene Apps
    Empfohlene Apps
  12. Klickt den Button „Installation abschließen“ um das Setup abzuschließen.
  13. Nach wenigen Augenblicken ist die Installation abgeschlossen und ihr solltet das Webinterface sehen.

    Willkommenstour im Webinterface
    Willkommenstour im Webinterface

OnlyOffice aktivieren

So viel zu „integriert“, selbst wenn ihr OnlyOffice bei der Einrichtung mitinstalliert habt, läuft noch gar nichts. Von offizieller Stelle nicht dokumentiert, muss noch eine weitere App installiert werden.

  1. Öffnet den Appstore indem ihr im Webinterface rechts, oben auf euren Account klickt und dort „Apps“ auswählt.

    Einige Menüs sind versteckt
    Einige Menüs sind versteckt
  2. Sucht nach die App ONLYOFFIC. Ihr findet sie im Bereicht „Büro & Text“.

    Die App ONLYOFFICE
    Die App ONLYOFFICE
  3. Ladet die App herunter und aktiviert sie.
  4. Sucht dann die App Community Document Server, ebenfalls unter „Büro & Text“.

    Die App Community Document Server
    Die App Community Document Server
  5. So und jetzt kommt, ihr könnt sie nicht herunterladen, ihr bekommt eine Fehlermeldung. Der Fehler liegt ausnahmsweise bei Nextcloud und nicht an der DiskStation-Konfiguration. Der Fehler ist bekannt und sollte mit dem nächsten Bugfix behoben werden. In der Zwischenzeit müsst ihr einen kleinen Umweg machen.
  6. Ladet die App über die Webseite des Appstores. (Für den Download auf die Versionsnummer klicken.)
  7. Laden die Datei auf eure DiskStation und entpackt sie dort (Achtung, die .tar.gz-Datei müsst ihr 2 mal entpacken damit ihr zum tatsächlichen Inhalt kommt.

    .tar.gz müssen 2x entpackt werden
    .tar.gz müssen 2x entpackt werden
  8. Kopiert den Ordner nach /volumeX/web/nextcloud/apps.
  9. Passt die Rechte an, indem Ihr das Script bzw. die 2 Befehle aus Schritt 4 und 5 der Installationsanleitung ausführt.
  10. Jetzt könnt ihr die App aktivieren. Geht dazu im Webinterface von Nextcloud wieder in den App-Bereich und dort unter „Deaktivierte Apps“. Aktiviert „Community Document Server“.

    Aktiviert den Community Document Server
    Aktiviert den Community Document Server
  11. Geht jetzt in den Adminbereich: Rechts, oben auf den Account klicken und Einstellungen. Im Navigationsbereich könnt ihr ONLYOFFICE auswählen. Kontrolliert ob die Einstellungen vorhanden sind. Unter Serviceadresse der Dokumentenbearbeitung muss die URL eurer Nextcloud eingetragen sein.

    Ist die URL eingetragen ist OnlyOffice einsatzbereit
    Ist die URL eingetragen ist OnlyOffice einsatzbereit
  12. Das war’s (vielleicht). Klickt ihr jetzt im Bereich „Dateien“ auf ein Dokument öffnet sich OnlyOffice und ihr könnt es im Browser bearbeiten. Erscheint nur die Auswahl für einen Download, ist OnlyOffice nicht aktiv. Erscheint „Community document server is not supported for this instance, please setup and configure an external document server“, dann müsst ihr im Log nach der genauen Fehlermeldung suchen. Dazu müsst ihr im Adminbereich auf „Protokollierung“ gehen. Steht dort „OCA\DocumentServer\Document\DocumentConversionException: sh: ./x2t: cannot execute binary file: Exec format error“ dann hat eure DiskStation eine ARM-CPU und auf der läuft OnlyOffice nicht. Derzeit gibt es aber noch viele andere Fehler.

Achtung

Wie schon erwähnt, hat Nextcloud Hub noch einige Fehler. Sollet ihr OnlyOffice nicht zum laufen bekommen, deaktiviert die beiden Apps ONLYOFFICE und Community Document Server und kümmert euch erstmal um Nextcloud selbst. Aufgrund der bereits gefundenen Fehler werde ich momentan keine Fehlersuche und Ursachenbekämpfung betreiben. Ich halte euch über Updates am laufenden. Habt ihr Probleme mit der Installation generell, könnt ihr natürlich einen Kommentar dalassen oder mir eine Nachricht schreiben.

Nächste Schritte

Wichtig

Bevor ihr eure Cloud jetzt nutzt, solltet ihr aber noch die Konfiguration optimieren, sie absichern und einige Fehler beheben. Lest dazu diesen Artikel.

Jetzt könnt ihr Nextcloud direkt im Browser nutzen, oder ihr ladet euch den Client herunter. Der Client funktioniert ganz ähnlich wie der von Dropbox. Ihr könnt eure gesamte Cloud mit eurem Rechner synchronisieren oder aber nur einzelne Ordner. Das synchronisieren einzelner Ordner ist auch dann ganz hilfreich wenn ihr schon eine bestehende Ordnerstruktur für eure Daten (Bilder, Videos, Datein, etc.) – z.B. auf verschiedenen Laufwerken – habt und ihr diese beibehalten wollt. Der Client ermöglicht auch die Verwendung mehrerer Nextcloud-Instanzen. Die Client-App für Smartphones bietet auch die Option Bilder automatisch hochzuladen. Die Daten selbst werden nicht alle auf das Smartphone heruntergeladen, erst wenn ihr einzelne Dateien über die App abruft.

Warnungen im Adminbereich
Warnungen im Adminbereich

Im Adminbereich unter „Übersicht“ werden mit ziemlicher Wahrscheinlichkeit einige Fehler angezeigt werden. Wie ihr diese beseitigen könnt und wie man Nextcloud optimiert, könnt ihr im nächsten Artikel der Serie nachlesen. Ihr könnt hier auch noch weitere nützliche Artikel rum um das Thema Nextcloud und Synology finden.

50 thoughts on “Die eigene Cloud: Nextcloud Hub Installation auf einer Synology DiskStation mit DSM 6.2

  1. Hallo Andreas,

    Ich habe so wie Bernd vorher die Fehlermeldung „No input file specified.“
    Ich habe alle Rechte so wie in der Anleitung beschrieben gesetzt. Jetzt habe ich festgestellt, dass im phpMyAdmin- GUI bei Webserver (nach Klick auf den Link „Server: MariaDB 10“ oben links) folgendes gelistet ist:

    Webserver

    nginx/1.15.7
    Datenbank-Client Version: libmysql – mysqlnd 5.0.11-dev – 20120503 – $Id: 76b08b24596e12d4553bd41fc93cccd5bac2fe7a $
    PHP-Erweiterung: mysqliDokumentation curlDokumentation mbstringDokumentation
    PHP-Version: 5.6.40

    Tja, warum wird dort nginx angezeigt? Ist das die Ursache des Problems? Und wie kann ich das ändern?

    Schöne Grüße,
    ein anderer David

    1. Hallo David.

      Ich vermute folgendes: Nginx ist der Standard-Webserver der DiskStation, der ist von Haus aus installiert auch wenn keine Web Station und kein Apache installiert sind. phpMyAdmin wird als Paket aus dem Paket-Zentrum installiert und hat als Abhängigkeit nur PHP 5.6. Ich denke als Webserver wird der Standard-Nginx benutzt, egal welchen Webserver man unter Web Station > Allgemeine Einstellungen einstellt. Der lässt sich nicht umstellen, da das Paket ja vorkonfiguriert ist. Installiert man phpMyAdmin per Hand sieht das sicher anders aus.
      Für die Nextcloud-Installation gilt aber der Webserver den man in der Web Station allgemein, bzw. bei Nutzung eines vHost in dessen Einstellungen, festgelegt hat.

      Was den Fehler angeht, scheint alles auf ein Rechteproblem hinzudeuten. Du könntest das hier probieren: https://mariushosting.com/synology-phpmyadmin-error-no-input-file-specified/

      Grüße,
      Andreas

    2. Hallo David,

      Ich denke ich habe Problem und Lösung gefunden.
      Für die Anleitung habe ich meine DS benutzt, die schon länger in Betrieb ist. Ich bin aber gerade dabei Nextcloud auf einer jungfräulichen DS aufzusetzen und habe den selben Fehler erhalten. Der wird bei mir ausgelöst wenn ich das benutzerspezifische open_basedir aktivieren. Das Textfeld ist hier leer, trägt man nur den Pfad zum Nextcloud-Datenordner ein kommts zum Fehler. Ein vergleich mit dem PHP-Profil meiner Nextcloud hat gezeigt dass dort schon Werte vorausgefüllt waren und ich den Pfad nur ergänzt habe.
      Auf der frischen DS fehlt bei open_basedir /tmp:/var/services/tmp:/var/services/web
      fügt man das ein und hängt dann :/volume1/NextcloudData dran dann passt alles und der Fehler ist verschwunden.

      Ich hoffe das hilft auch dir weiter.

      LG
      Andreas

  2. Hi leute,
    kann mir jemand bei Onlyoffice in der Nextcloud 18.0.1 helfen?

    Ich hatte leider beim experementeiren mit dem Community Documentserver die 4 Tabellen manuell gelöscht
    oc_documentserver_changes
    oc_documentserver_ipc
    oc_documentserver_locks
    oc_documentserver_sess

    Ich dachte wenn ich die App selbst entferne und wieder installiere, werden diese erneut erstellt. Ledier falsch gedacht.
    Ich habe in dem php Sourcecode zu der App rumgewüllt und dort einen Script gefunden welcher die Tabellen wohl erstellt. Leider kann ich den allein nicht ausführen.

    Kann jemand von euch die SQL Createstatements extrahieren (falls es geht) und mir hierher posten? Eventuell gibt es eine andere Lösung wie ich die Tabellen erneut erstellen kann. Für diese wäre ich ebenfalls dankbar!!

    Vielen Danke an euch alle im Voraus!

  3. Hello,

    I have an error 500 with php73 while php 7.0 is ok.
    I configured php73 on vhost and webstation but still having error.
    Can you help ?
    Regards

      1. Hi Andreas,

        I did create a new PHP_profile on Webstation with same parameters as PHP profile 7.0. The basedir is ok, core options are configured.
        I noticed that sudo -u php73 occ is not working.
        phpinfo is ok when virtual host is configured with php73.
        I’m stuck on nextcloud 15 and php70 because of that.
        Thank you for your help.
        KaM

        1. Strange, it worked out of the box for me. But there is mostly one little thing that is not directly related that causes the issue.
          Check the Apache error logs, there should me some message why you get 500. From there on it should be possible to find out, what’s the issue.

        2. Below error log on Apache2.4 and configuration of webstation and vhost, i can’t find anything. Note that apache2.4 is working with php7.0 but not with php7.3

          2020-02-25T16:07:13+01:00 SynNas [Tue Feb 25 16:07:13.046349 2020] [proxy_fcgi:error] [pid 24925:tid 140505073538816] [client 192.168.1.254:57301] AH01071: Got error ‚PHP message: PHP Fatal error: Uncaught Doctrine\\DBAL\\DBALException: Failed to connect to the database: An exception occured in driver: SQLSTATE[HY000] [2002] No such file or directory in /volume1/web/nextcloud/lib/private/DB/Connection.php:64\nStack trace:\n#0 /volume1/web/nextcloud/3rdparty/doctrine/dbal/ lib/Doctrine/DBAL/Connection.php(429): OC\\DB\\Connection->connect()\n#1 /volume1/web/nextcloud/3rdparty/doctrine/dbal/ lib/Doctrine/DBAL/Connection.php(389): Doctrine\\DBAL\\Connection->getDatabasePlatformVersion()\n#2 /volume1/web/nextcloud/ 3rdparty/doctrine/dbal/lib/Doctrine/DBAL/Connection.php(328): Doctrine\\DBAL\\Connection->detectDatabasePlatform()\n#3 /volume1/web/nextcloud/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/Connection.php(623): Doctrine\\DBAL\\Connection-> getDatabasePlatform()\n#4 \volume1/web/nextcloud/lib/private/DB/Connection.php(151): Doctrine\\DBAL\\Connection->
          setTransactionIsolation(2)\n#5/volume1/web/nextcloud/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/DriverManager.php(172)

          /usr/local/etc/apache24/sites-enabled/webstation-default.conf

          SetHandler „proxy:unix:/run/php-fpm/php-9db4b885-49ca-4bc8-9cd3-4da9cf5c0c9.sock|fcgi://localhost“

          Options MultiViews FollowSymLinks ExecCGI
          AllowOverride All

          Require all granted

          DirectoryIndex index.html index.htm index.cgi index.php index.php5

          /usr/local/etc/apache24/sites-enabled/httpd-vhost.conf

          DocumentRoot „/volume1/web/nextcloud“

          DirectoryIndex index.html index.htm index.cgi index.php index.php5

          Options MultiViews FollowSymLinks ExecCGI
          AllowOverride All

          Require all granted

          SetHandler „proxy:unix:/run/php-fpm/php-9db4b885-49ca-4bc8-9cd3-4da9cf5c0c9.sock|fcgi://localhost“

          The PHP_INI_SCAN_DIR is
          /var/packages/WebStation/etc/php_profile/9db4b885-49ca-4bc8-9cd3-4da9cf5c0c9/conf.d/

        3. Hm, the config seems fine. The error in the error log is connected with the module that handles DB connections (most probably MySQL). Check if this module is enabled in the PHP 7.3 Profile.
          If it is not enabled, enable it, if it is enabled, try to delete the PHP7.3 Profile, uninstall PHP 7.3 and install it again.

        4. Hi Andreas,

          All modules are loaded, already tried to remove and reinstall php73 and profile without success.
          sh-4.3# php73 -m
          [PHP Modules]
          bcmath
          bz2
          calendar
          Core
          ctype
          curl
          date
          dba
          dom
          exif
          fileinfo
          filter
          ftp
          gd
          gettext
          gmp
          hash
          iconv
          imap
          intl
          json
          ldap
          libxml
          mailparse
          mbstring
          mysqli
          mysqlnd
          openssl
          pcntl
          pcre
          PDO
          pdo_dblib
          pdo_mysql
          pdo_pgsql
          pdo_sqlite
          pgsql
          Phar
          posix
          readline
          Reflection
          session
          shmop
          SimpleXML
          soap
          sockets
          sodium
          SPL
          sqlite3
          ssh2
          standard
          sysvmsg
          sysvsem
          sysvshm
          tokenizer
          wddx
          xml
          xmlreader
          xmlrpc
          xmlwriter
          xsl
          zip
          zlib

          [Zend Modules]

        5. Andreas,

          I was able to solve the problem.

          I don’t why but migrating the nextcloud db from Mariadb5 to Mariadb10 made it.

          Thank you for your help.

          Regards,
          Karim

  4. Ich fasse mal meine Erkenntnisse zusammen:
    1. Aktualisiert Nextcloud auf 18.0.1 und aktualisiert die Apps, jetzt lässt sich der Documentserver und Openoffice installieren.
    Damit die Installation nicht wieder fehlschlägt erhöht das Timeout:
    RequestOptions::TIMEOUT => 30,
    https://riegers.in/nextcloud-18-alert/

    2. Wenn beide Tools installiert sind müssen folgende Werte in den ONLYOFFICE Einstellungen vorgenommen werden:
    Serviceadresse der Dokumentbearbeitung: https:///index.php/apps/documentserver_community/
    Serviceadresse der Dokumentbearbeitung für interne Anforderungen vom Server: https:///nextcloud/index.php/apps/documentserver_community/
    Serveradresse für interne Anforderungen vom Dokumentbearbeitung-Service: https:///nextcloud/index.php/apps/documentserver_community/
    Als nächstes auf Speichern klicken.

    3. Onlyoffice/Documentserver läuft nur auf 64Bit Geräten.
    Ich habe leider eine Synology DS218j und die hat einen 32Bit Prozessor. Also habe ich Pech und kann es nicht nutzen.
    Es erscheint eine entsprechende Fehlermeldung wenn man die Dateien bearbeiten möchte.

  5. Hallo und herzlichen Dank für deine ausführliche Anleitung. Ich habe viele Stunden mit alten Anleitungen verschwendet bis ich diese Anleitung gefunden haben! Ich habe eine Herausforderung und finde aber nirgends eine Antwort, hoffentlich kann mir hier weitergeholfen werden:

    Ich erreiche Nextcloud unter WebDAV nicht. Meine Syno hat ebenfalls den WebDAV aktiv und wird von aussen angesprochen. Eine Idee, wo ich mit der Problemlösung beginnen sollte?

    1. Hallo,

      Du möchtest über das Internet auf die Nextcloud über WebDAV zugreifen? Oder aus dem LAN?
      Ich schau mir das am Wochenende mal bei mir an. Ich bin mir gerade nicht sicher ob und wo ich die Nextcloud WebDAV URL verwende.

    2. So, habs schnell mal getestet. Als URL habe ich https://nextcloud-domain.com/remote.php/webdav/ verwendet. In der Nextcloud-Dokumentation steht eine leicht andere URL. Funktioniert bei mir nur im LAN, da ich ja den Port für WebDAV im Router nicht freigegeben habe.
      Kontrollier also mal die URL und wenn ud das ganze aus dem Internet erreichen willst, musst du eben den Port für WebDAV im Router aufmachen.

      LG

  6. Deine Anleitungen haben mir schon echt gut geholfen. Dank derer nutze ich die Nextcloud schon eine ganze Weile auf der Synology.
    Ich habe meine bestehende Installation auf Hub aktualisiert, soweit alles erfolgreich. Gemäß Deiner Anleitung habe ich dann auch OpenOffice als App aktiviert und die Installation Community Document Server durchgeführt. Auch diese App habe ich aktiviert.
    Und trotzdem erscheinen bei mir die Funktionen einfach nicht.
    Das Protokoll gibt folgenden Fehler aus:

    1. [PHP] Error: stream_get_contents(): supplied resource is not a valid stream resource at /volume1/web/nextcloud/apps/documentserver_community/lib/Document/FontManager.php#67

    POST /index.php/settings/apps/enable

    2. [PHP] Error: fclose(): supplied resource is not a valid stream resource at /volume1/web/nextcloud/apps/documentserver_community/lib/Document/FontManager.php#66

    POST /index.php/settings/apps/enable

    Keine Ahnung ob das die Ursachen für die nicht erscheinenden Funktionen sind.

    Hast Du einen Tipp? Ich kann hierzu nichts finden…

    1. Hallo,
      Ich würde mich an deiner Stelle auf help.nextcloud.com umsehen. Ich selbst hab beschlossen bei 17.0.x zu bleiben und auf eine stabilere Version zu warten.

  7. Bekomme beim Aufruf der Nextcloud-Seite nur eine weiße Seite mit dem Hinweis: „No input file specified“. Installation nicht möglich. Sonst alles so gemacht, wie beschrieben.

    1. Hallo,

      Läuft Nextcloud auch nicht über nginx?
      Ist bei dir unter WebStation > PHP-Einstellungen ein PHP-Profil (mit PHP 7.3) vorhanden?
      Kontrolliere auch noch mal die Rechte deiners Nextcloud Ordners und deines Data-Ordners mit ls -l /pfad/.

      LG

      1. Danke für die Hinweise. Mittlerweile lief die Nextcloud HUB auf meiner Syno. Es ist so, dass wirklich alle Datenbanksachen und Rechtevergaben für http:http auf per Putty auf der Console ausgeführt werden müssen. Sonst geht gar nichts! Und was soll ich sagen: kaum macht man es richtig, schon funktioniert es. Einige Meldungen konnte ich dank dieser tollen Seite schon ausmerzen. Nach Deiner Anleitung habe ich heute abend in der Config-Datei den Memory-Cache eingetragen. Jetzt bekomme ich einen Seiten-Ladefehler! Wie war das? Never change a running system.

        1. Sorry, war Fehler von mir! Falche Adresse aufgerufen. Kommt davon, wenn man mehere Domains hat. Es fuunktioniert. Meldungen in der Nextcloud betreffen nur noch imagick und die Sache mit dem „big int“. Welchen Befehl muss ich denn eingeben, damit das „bereinigt“ wird?

        2. Sollte eigentlich in der Meldung dabeistehen. Für dei DS angepasst müsste das sudo -u http php73 occ db:convert-filecache-bigint sein.

        3. Memory Limit mit 1GB bei 6 GB RAM. OPCache wie auf Deiner Seite in einem anderen Artikel beschrieben.
          Und das System läuft sehr flott.

    2. Hallo Bernd,

      Auch für dich nochmal die Antwort die ich David gegeben haben:

      Ich denke ich habe Problem und Lösung gefunden.
      Für die Anleitung habe ich meine DS benutzt, die schon länger in Betrieb ist. Ich bin aber gerade dabei Nextcloud auf einer jungfräulichen DS aufzusetzen und habe den selben Fehler erhalten. Der wird bei mir ausgelöst wenn ich das benutzerspezifische open_basedir aktivieren. Das Textfeld ist hier leer, trägt man nur den Pfad zum Nextcloud-Datenordner ein kommts zum Fehler. Ein vergleich mit dem PHP-Profil meiner Nextcloud hat gezeigt dass dort schon Werte vorausgefüllt waren und ich den Pfad nur ergänzt habe.
      Auf der frischen DS fehlt bei open_basedir /tmp:/var/services/tmp:/var/services/web
      fügt man das ein und hängt dann :/volume1/NextcloudData dran dann passt alles und der Fehler ist verschwunden.

      Ich hoffe das hilft auch dir weiter.

      LG
      Andreas

  8. Hi,

    danke für den Artikel, hast Du auch mal eine Installation mit Docker ausprobiert? Sollte doch einfacher sein, bin aber trotzdem gescheitert, weil bei mir keine Verbindung zur MariaDB hergestellt werden konnte. Verwende ich die interne SqlLite-DB läuft NextCloud einigermaßen, OnlyOffice funktioniert aber nicht. Scheint noch sehr verbugt zu sein.

    VG
    Jörn

    1. Ich habe mal daran gedacht und mich auch eingelesen, allerdings scheint die Synology-Version von Docker immer weider Probleme zu machen, dazu die Performanceeinbußen, das würde auf meiner DS nicht mehr gut laufen. Ich hab dann Docker wieder verworfen.

  9. Bei dieser Anleitung gibt es einige Lücken!!!
    Bei MariaDB 10 muss TCP/IP Verbindungen aktiviert sein – das verursacht nämlich sonst den Connection Refused Error

    Benutzer auf der Datenbank funktioniert nicht, man hat zu wenig Rechte. Manuell setzen über phpmyadmin hilft da nur etc….

    1. Kannst du das näher erläutern? Bisher hat es gereicht einfach das MariaDB Paket zu installieren und mit dem root User konnte man neue User anlegen.
      Für Nextcloud reicht der User mit den Rechten wie in der Anleitung, als Host reicht localhost, da Nextcloud und MariaDB am selben Host laufen.

    1. Ja, danke dir. Damit ist die PHP Version dann korrekt und der PHP Fehler verschwindet. Leider bleibt der SQLSTATE weiter bestehen, egal ob via webinterface oder cli (das habe ich dank eurem Tipp mit dem php73 probieren können)

  10. Herzlichen Dank für das Januar Update. Ich hatte es Anfang Januar mit der alten Anleitung probiert, das hat aber nicht funktioniert. Nun hatte ich die Hoffnung, dass es mit der neuen geht – Fehlanzeige. Wie früher taucht folgender Fehler beim Einrichten der NC auf:

    Error while trying to create admin user: Failed to connect to the database: An exception occurred in driver: SQLSTATE[HY000] [2002] Connection refused
    Ich habe schon alle Pakete im DSM mehrfach neu installiert. Der Fehler scheint ab und an aufzutreten, eine Google Suche liefert allerlei Lösungsideen. Die greifen aber sämtlich nicht.

    Wenn ich allerdings zum Test den „occ“ Befehl via SSH aufrufe, meldet er mir:
    sudo -u http php occ
    This version of Nextcloud requires at least PHP 7.1You are currently running 5.6.11. Please update your PHP version

    PHP7.3 ist installiert und in der WebStation unter den „Allgemeinen Einstellungen“ ausgewählt. Ich habe dort auch einen Virtuellen Host probiert, den via anderem Port erreichbar gemacht und nochmal explizit Apache/PHP7.3 ausgewählt, aber der Fehler bleibt bestehen. Nimmt die WebStation trotz meiner Auswahl PHP5.6 und es klappt deshalb nicht?

    Bin mit meinem Latein am Ende. Hast du noch eine Idee? Ich würde NC gerne nativ aufsetzen wie von dir beschrieben

    1. Achtung. Das ist ein „Problem“ von DSM. Von PHP gibt es sowohl die Variante für den Webserver als auch die Variante für die Kommandozeile (cli). Auch wenn du nur das Paket für PHP 7.3 installiert hast. DSM hat selbst 5.6 für die Kommandozeile. Wenn du einen Befehl mit einer neueren Version ausführen willst musst du die im Befehl explizit verwenden, z. B. sudo – u http php73 occ…

      1. Ah okay, danke dir. Dann hat das mit dem Problem beim Aufsetzen nichts zu tun, vermute ich? Das eigentliche Problem bleibt ja bestehen 😀

        1. 127.0.0.1 bzw. 127.0.0.1:3307 hast du als DB Host probiert?
          Scheinbar klappt der Zugriff auf die Datenbank nicht, bei mir wars die falsche Hostadresse, ansonsten wüsste ich nicht worans liegen könnte.
          PHPMyAdmin kannst du normal erreichen?

        2. Ja, habe ich. Scheitert immer mit dem gleichen Fehler. PhpMyAdmin geht problemlos. Der angelegte User erscheint auch wie geplant dort, passende Rechte inklusive, würde ich sagen. Kenne mich mit Datenbanken nicht übermässig aus, aber mir scheint alles da zu sein was es braucht (passend zu den Privilegien die in der Befehlszeile angelegt werden sollen)

        3. Du könntest alternativ MariaDB 5 für die Installation ausprobieren. da musst du dann aber die DB Adresse anpassen. Ich glaub localhost müsste reichen. Ansonsten eben wieder 172.0.0.1 oder die lokale IP der DS probieren.
          Updaten kannst danach immer noch bzw kannst du so die Ursache eingrenzen.

        4. Juuuuuuuu! Ich kann auf deinen comment mit der Lösung unten nicht antworten, daher hier: MariaDB5 hat problemlos funktioniert! Danke dir! Ich hab schon Tage mit dem K*** verbracht 😀

          Ist das Update auf 10 sinnvoll? Ich werde nur 2-3 User anlegen, ist also keine gigantische Sache. Nicht dass es mir alles wieder zerlegt 😉

        5. Prinzipiell ist es schon sinnvoll Software aktuell zu halten, gerade im Web-Bereich. MariaDB10 ist schon eine weile verfügbar. Ich kann dir nicht sagen ob es gravierende Neuerungen zu MariaDB5 gibt oder ob MariaDB5 irgendwann nicht mehr unterstützt wird.
          Du kannst es ja probieren, es ist ja an sich nicht viel verloren. Du richtest MariaDB10 parallel zu MariaDB5 her und änderst dann die Nextcloud-Config. Wenns nicht klappen sollte, kannst du ja wieder MariaDB5 einstellen solang du da nichts löscht.
          Hier solltest du alles finden was du brauchst https://www.synology-forum.de/showthread.html?86797-Nextcloud-Migration-auf-MariaDB-10

    2. Ergänzung: Der OCC Fehler wird ausgegeben, obwohl nur PHP7.3 installiert ist. Alle sonstigen Versionen sind nicht vorhanden und werden in der WebStation auch nicht angezeigt

    3. Das hatte ich auch. Der User wird nicht erkannt, da er mit oc_ anfangen muss. Legst Du einen neuen User auf der Datenbank an, dann darfst Du nicht irgendeinen nehmen, sondern einen mit oc_ am Anfang.
      Wenn Du es so machst, wie in diesem Beispiel hier, dann geht es ohne Probleme. Du hast wahrscheinlich einen x-beliebigen Username verwendet, was eigentlich auch funktionieren sollte. Aber mit dieser Anleitung nicht.

      1. Ich habe alles mögliche probiert – den Usernamen hatte ich exakt wie hier (unter anderem). Mit MariaDB5 hat es geklappt.
        Aber danke für die Idee 🙂

  11. Hallo,
    vielen Dank für das Anpassen des Tutorials.
    Fehler, die ich bis jetzt finden konnte:

    – phpMyAdmin funktioniert nicht mit der php7.3, es wird automatisch die 5.6 mit installiert.
    – Im ersten Codeblock („chown http:http \volume1\nextcloudData“ …) werden Backslashes anstatt normaler genutzt (evtl. Windows-bedingt?).
    – Da ist ein Zahlendreher im Port für MariaDB: 172 -> 127.

    1. Ja für phpmyadmin braucht man leider noch PHP 5.6, deswegen greif ich nur noch ohne auf die Datenbank zu. Für Nextcloud selbst ist aber mindestens 7.2 erforderlich.

      Haha, Danke fürs Fehler finden, ich sollte das nicht spät und übermüdet machen.

  12. hallo andreas,
    danke für den guten blog und deine anleitungen!
    habe gerade versucht nextcloud auf meiner synology zu installieren und bin gescheitert. ich kenne mich mit grundsätzlichen PC dingen aus, aber nicht in der unix welt. hier meine fragen und probleme:

    1. ich habe es schon richtig verstanden, dass es einen separaten datenordner auf oberster ebene und einen programmordner im web verzeichnis geben soll?

    2. Folgende Fehlermeldung (Skript aller 5 Zeilen aus Installation_4. mit Notepad erstellt):
    „root@mconsulting:~# sh /volume1/web/ncrechte.sh
    /volume1/web/ncrechte.sh: line 2: $’\r‘: command not found
    chown: cannot access ‘/volume1/web/PrivateCloud/\r’: No such file or directory
    /volume1/web/ncrechte.sh: line 4: $’\r‘: command not found“

    Habe dann die 3 Befehle händisch eingegeben, gingen ohne (Fehler)medlung durch – ist das so OK oder muss ich was beachten?

    3. Ich scheitere dann an Schritt 6 „Öffnet Nextcloud im Browser (z.B. mydomain.com/mycloud oder myDS/myCloud). “ Leider null Ahnung, was ich von wo aus öffnen muss, damit Nextcloud startet. Ich finde auch kein nextcloud Installation oder .exe File.

    Wäre toll, wenn Du mir hier weiterhelfen kannst.

    1. 1. Du könntest auch den voreingestellten Data Ordner lassen, das ist aber nicht sonderlich sicher. Den gemeinsamen Ordner musst du aber über DSM anlegen.

      2. Mach das nicht im Notepad sondern in der Konsole (putty) mit vi. Notepad schmeißt dir Steuerzeichen rein, in dem Fall \r und das kennt die Konsole dann nicht.

      3. Schau welche lokale IP deine Diskstation hat du kannst dann die IP eingeben z. B. http://192.168.0.1/nextcloud oder eben den name deiner Diskstation gefolgt von /nextcloud. Wie du eine Domain einrichtest kannst du auch hier im Blog nachlesen.

Schreibe einen Kommentar zu Thomas Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.