Nextcloud Umzug sinnvoll?

Hallo Forum,

nachdem ich vor ein paar Tagen meine bei Manitu ( Webhosting [M]) gehostete Nextcloud endlich mal wieder updaten wollte, bin ich erstmal in dieses Problem hereingelaufen:
Update auf 31.0.3 Verifying integrity schlägt fehl

… und dachte hier ist nun Schluss mit Updates. Irgendwann habe ich dann eine Lösung gefunden, die funktioniert hat:

php -d memory_limit=512M updater/updater.phar

Nun ist meine Nextcloud also wieder frisch aber auf der Suche nach einer Lösung für das Problem hatte ich mich als erstes auf die Suche nach einem neuen Provider gemacht und nun komme ich langsam zum Punkt :wink:

Ich bin auf das Paket Webhosting 2000 bei Netcup mit PHP Memory Limit 512 MB gestoßen, das in etwa das selbe kostet, wie mein jetziges Hosting bei Manitu. Nun habe ich viel dazu recherchiert und den Eindruck, das könne ich mal ausprobieren.

Die 512 MB PHP Memory Limit sind schonmal ein Argument dafür, aber mir sind auch ein paar andere eingefallen, die dafür sprechen können:

  1. Das hier (Nextcloud Update | ...the user that owns the file config/config.php - #5 by heinetz) hatte ich vor 2 Jahren mal zum Laufen bekommen, aber kurz darauf stand Manitu bei mir vor der Tür und meinte, ich würde damit gegen Ihre AGB verstoßen. Gruss an Crashandy, der hier schreibt, dass er es bei Netcup nach meiner Anleitung hingekommen hat. Ich gehe davon aus, dass das bei Dir läuft(?)

  2. Nexcloud Office. Dazu schreibt Manitu das hier:

Kann ich mein Webhosting-Paket als Collabora-Server nutzen?

Leider ist dies aus technischen Gründen in unserer Webhosting-Umgebung nicht möglich. Weder kann das Webhosting-Paket als Collabora-Server benutzt, noch kann ein Collabora-Service gegen Aufpreis dazugebucht werden.

Es ist jedoch möglich, extern gehostete Collabora-Server in die Cloud bei uns einzubinden.

Wichtig: Bitte installieren Sie ab Nextcloud-Version 19 nicht den Collabora Built-in CODE Server. Dieser öffnet auf dem Server einen Netzwerk-Port und verstößt damit gegen unsere AGB.

Und wieder klingt der folgende Beitrag von @Crashandy vielversprechend …

… und ich kann mir vorstellen, dass das Webhosting 2000 für meine Zwecke (Eine Instanz mit zwei privaten Benutzern, die die Nextcloud vor allem für Kalender, Kontakte und Fotos nutzen) ausreichend ist.

Was meint Ihr?

Eine kleine Unsicherheit fällt mir noch ein, die ich habe:

Bei Manitu kann ich per SSH auf den Server, um die Nextcloud mit OCC-Kommandos zu warten. Ich lese bei Netcup, dass man einen SSH Zugang hat aber die Einschränkung SSH (kein Root). Ich gehe davon aus, dass ich das bei Manitu auch nicht habe aber vor Allem für das was ich vorhabe, auch nicht brauche.

Beste Grüße,
heinetz

Leider kann ich im Webhosting 2000 nicht testen, da ich bei allen mir verfügbaren Zugängen nur Webhosting 4000 empfohlen und Nextcloud-Instanzen dort installiert habe.

Auf meinem Webhosting 4000 habe ich mit Stand Juni 2025 zwei produktive und weitere 4 Test-Instanzen am Laufen. Bei den produktiven Instanzen läuft auch der Collabora Online - Built-in CODE Server in der Version 25.4.202 recht gut.

Hier einmal ein aktueller Auszug aus meiner config.php und ein paar aktuelle Screenshots dazu.

  'memcache.local' => false,
  'filelocking.enabled' => true,
  'enable_previews' => true,
  'preview_concurrency_all' => 8,
  'preview_concurrency_new' => 4,
  'preview_max_x' => 2048,
  'preview_max_y' => 2048,
  'preview_max_filesize_image' => 128,
  'preview_max_memory' => 512,
  'preview_ffmpeg_path' => '/var/www/vhosts/hosting123456.abc789.netcup.net/httpdocs/cloud/ffmpeg/ffmpeg',
  'enabledPreviewProviders' => 
  array (
    0 => 'OC\\Preview\\Image',
    1 => 'OC\\Preview\\HEIC',
    2 => 'OC\\Preview\\TIFF',
    3 => 'OC\\Preview\\Movie',
    4 => 'OC\\Preview\\Krita',
    5 => 'OC\\Preview\\MarkDown',
    6 => 'OC\\Preview\\MP3',
    7 => 'OC\\Preview\\OpenDocument',
    8 => 'OC\\Preview\\TXT',
    9 => 'OC\\Preview\\XBitmap',
    10 => 'OC\\Preview\\PDF',
  ),

Wenn Du nicht zu große Anforderungen hast, dann sollte es mit dem Webhosting 2000 auch noch gut funktionieren.

Alle wichtigen Befehle können natürlich im SSH-Zugang wie folgt ausgeführt werden.

php -d memory_limit=512M /httpdocs/cloud/nc01/nextcloud/occ files:scan --all
php -d memory_limit=512M /httpdocs/cloud/nc01/nextcloud/occ db:add-missing-indices
php -d memory_limit=512M /httpdocs/cloud/nc01/nextcloud/occ maintenance:repair

Schöne Pfingstgrüße,
Crashandy

Ich weiss ja, dass Du Webhosting 4000 und nicht 2000 nutzt :wink:
Da sich das aber bzgl. der Nextcloud nicht von den Funktionalitäten her zu unterscheiden scheint, sondern nur von den Werten her, gehe ich davon aus, dass das grundsätzlich funktionieren wird. Ob die Leistung nun ausreicht, damit man das Office benutzen kann, muss ich ausprobieren. In meinem aktuellen Hosting geht es ja gar nicht. Und ausprobieren kann man ja bei Netcup 1 Monat lang.

Danke und
Beste Grüße,
heinetz

Gut, nun steht mir die Webhosting-Umgebung bei Netcup zur Verfügung ohne Domains/ ich nutze erstmal die Standard-Domain. Darunter habe ich mir eine Subdomain angelegt und erstmal eine Nextcloud out-of-the-box installiert. Selbst das Office funktioniert out-off-the-box erstmal. Ein paar Dinge habe ich konfiguriert, um Fehlermeldungen in der Verwaltungsübersicht einzuschränken und stehe vor drei Aufgaben, die ich der Reihe nach abarbeiten will:

  1. Ich würde gerne wissen, was ich machen muss, um per SSH OCC-Komandos ausführen zu können. Ich muss dazu sagen, dass ich den SSH-Zugang auf meinem Webhosting-Account bei Manitu irgendwie einrichten konnte und jetzt nutzen kann, aber bei dem Netcup-Account bei 0 anfange. Kann mir jemand verraten, wie ich vorgehe?

  2. Ich würde gerne checken, ob ich noch weitere Konfigurationen vornehmen kann/muss, um diese Instanz zu optimieren. Da würde ich mich über Input freuen. Ich fange mal bei den Sicherheits- & Einrichtungswarnungen an, die mir (noch) angezeigt werden:

Es gibt einige Fehler in Ihrer Systemkonfiguration.

  • Kein Hochleistungs-Backend konfiguriert – Ohne das Hochleistungs-Backend skaliert es nur für kleinere Meetings (max. 2–3 Teilnehmer). Bitte richten Sie das Hochleistungs-Backend ein, um sicherzustellen, dass Meetings mit mehreren Teilnehmern reibungslos funktionieren. Weitere Informationen finden Sie in der Dokumentation :up_right_arrow:.
  • 115 Fehler in den Protokollen seit 4. Juni 2025, 21:39:41
  • Der Server hat keine konfigurierte Startzeit für das Wartungsfenster. Das bedeutet, dass ressourcenintensive tägliche Hintergrundaufgaben auch während Ihrer Hauptnutzungszeit ausgeführt werden. Wir empfehlen, das Wartungsfenster auf eine Zeit mit geringer Nutzung festzulegen, damit Benutzer weniger von der Belastung durch diese umfangreichen Aufgaben beeinträchtigt werden. Weitere Informationen finden Sie in der Dokumentation :up_right_arrow:.
  • Das PHP OPcache-Modul ist nicht ordnungsgemäß konfiguriert. Der “OPcache interned strings”-Puffer ist fast voll. Um sicherzustellen, dass sich wiederholende Strings effektiv zwischengespeichert werden können, wird empfohlen, “opcache.interned_strings_buffer” mit einem Wert größer als “8” in der PHP-Konfiguration zu setzen.. Weitere Informationen finden Sie in der Dokumentation :up_right_arrow:.
  • Die Datenbank wird für transaktionale Dateisperren verwendet. Um die Leistung zu verbessern, konfigurieren Sie bitte Memcache, falls verfügbar. Weitere Informationen finden Sie in der Dokumentation :up_right_arrow:.
  • Für Ihre Installation ist keine Standard-Telefonregion festgelegt. Dies ist erforderlich, um Telefonnummern in den Profileinstellungen ohne Ländervorwahl zu überprüfen. Um Nummern ohne Ländervorwahl zuzulassen, fügen Sie bitte “default_phone_region” mit dem entsprechenden ISO 3166-1-Code der Region zu Ihrer Konfigurationsdatei hinzu. Weitere Informationen finden Sie in der Dokumentation :up_right_arrow:.
  • Sie haben Ihre E-Mail-Serverkonfiguration noch nicht festgelegt oder überprüft. Gehen Sie bitte zu den “Grundeinstellungen”, um diese festzulegen. Benutzen Sie anschließend den Button “E-Mail senden” unterhalb des Formulars, um Ihre Einstellungen zu überprüfen. Weitere Informationen finden Sie in der Dokumentation :up_right_arrow:.

Welche davon lassen sich durch Optimierung wegkriegen ?
(Über die letzten beiden Meldungen müssen wir nicht reden :wink: )

  1. Dann würde ich zuletzt gerne aktiv genutzte NC-Instanz bei Manitu zu dem Netcloud-Account migrieren. Diese jetzt bestehende NC-Instanz bei Netcup mit den Beispieldaten würde ich aber erhalten und die Migration parallel unter einer anderen Subdomain installieren.

Kann mir jemand Tipps geben, wie ich vorgehe?

Danke und
Beste Grüße,
heinetz

Ach ja: Der Vollständigkeit halber meine aktuelle config.php:

<?php
$CONFIG = array (
  'instanceid' => 'oc81st0a7hto', //auto
  'passwordsalt' => 'XXX', //auto
  'secret' => 'xxx', //auto
  'trusted_domains' => 
  array (
    0 => 'cloud2.hostingXXXXXX.ae99f.netcup.net', //auto
  ),
  'datadirectory' => '/var/www/vhosts/hostingXXXXXX.ae99f.netcup.net/web/herrhein.com/subdomains/cloud2.herrhein.com/httpdocs/data', //auto
  'version' => '31.0.5.1', //auto
  'overwrite.cli.url' => 'https://cloud2.hostingXXXXXX.ae99f.netcup.net', //auto
  'installed' => true, //auto
  'maintenance' => false, //auto
	
  'dbtype' => 'mysql', //DB-Config
  'dbname' => 'k292646_cloud', //DB-Config
  'dbhost' => 'XX.XX.XXX.XXX:XXXX', //DB-Config
  'dbport' => '', //DB-Config
  'dbtableprefix' => 'oc_', //DB-Config
  'mysql.utf8mb4' => true, //DB-Config
  'dbuser' => 'k292646_cloud', //DB-Config
  'dbpassword' => 'XXX', //DB-Config
	
  'memcache.local' => false, //Hinzugefügt aber Keine Ahnung, was das macht
  'filelocking.enabled' => true, //Hinzugefügt aber Keine Ahnung, was das macht
);

Zu 1.

Ich konnte mich nun per SSH mit dem Server verbinden und bin in mein NC-Verzeichnis navigiert, um zu versuchen, ob ich OCC-Kommandos ausführen kann:

bash-5.2$ php -d memory_limit=512M updater/updater.phar
Nextcloud Updater - version: v30.0.2rc1-9-ge6d305f

PHP Warning:  fopen(/var/www/vhosts/hostingXXXXX.ae99f.netcup.net/web/herrhein.com/subdomains/cloud2.herrhein.com/httpdocs/data/updater.log): Failed to open stream: No such file or directory in phar:///web/herrhein.com/subdomains/cloud2.herrhein.com/httpdocs/updater/updater.phar/lib/Updater.php on line 1151
Could not open updater.log

Ich würde hier spontan ein Rechteproblem unterstellen. In meinem Manitu-Account gibt es in der Admin-Oberfläche für das Webhosting ein Interface, um rekursiv den Benutzer von Verzeichnissen zu ändern (chown). Auch dort kann ich die OCC-Kommandos erst ausführen, nachdem ich den SSH-User zum Benutzer (womit wahrscheinlich der Besitzer gemeint ist) meines NC-Verzeichnisses gemacht habe. Aber wie setze ich hier die Rechte korrekt für die Nexcloud-Instanz?

Beste Grüße,
heinetz

Das hat erst einmal nichts mit den Rechten zu tun, sondern mit dem Realpfad. Schau Dir dazu meinen Beitrag und eventuell auch die darauf folgenden Beiträge an.

Das liegt an der aktivierten App “Talk”, welche Du im Webhosting generell nicht verwenden solltest. Das der Collabora Online - Built-in CODE Server bei netcup funktioniert, ist schon fast ein Alleinstellungsmerkmal im Webhosting.

Für die Funktionen der einzelnen Befehle solltest Du Dir einfach einmal die “config.sample.php” in Deinem config Verzeichnis genauer ansehen.
Im Webhosting gibt es grundsätzlich auch kein Redis und auch kein APCu für Memcache, daher bekommst Du einige Fehler nicht weg.

1 Like

Alright. Der Tipp mit Realpath hat funktioniert und ich konnte im terminal OCC-Befehle absetzen. Die Fehlermeldungen konnte ich nun reduzieren:

Es gibt einige Warnungen zu Ihrer Systemkonfiguration.

  • Das PHP OPcache-Modul ist nicht ordnungsgemäß konfiguriert. Der “OPcache interned strings”-Puffer ist fast voll. Um sicherzustellen, dass sich wiederholende Strings effektiv zwischengespeichert werden können, wird empfohlen, “opcache.interned_strings_buffer” mit einem Wert größer als “8” in der PHP-Konfiguration zu setzen.. Weitere Informationen finden Sie in der Dokumentation :up_right_arrow:.
  • Die Datenbank wird für transaktionale Dateisperren verwendet. Um die Leistung zu verbessern, konfigurieren Sie bitte Memcache, falls verfügbar. Weitere Informationen finden Sie in der Dokumentation :up_right_arrow:.
  • Sie haben Ihre E-Mail-Serverkonfiguration noch nicht festgelegt oder überprüft. Gehen Sie bitte zu den “Grundeinstellungen”, um diese festzulegen. Benutzen Sie anschließend den Button “E-Mail senden” unterhalb des Formulars, um Ihre Einstellungen zu überprüfen. Weitere Informationen finden Sie in der Dokumentation :up_right_arrow:.
  • Kein Hochleistungs-Backend konfiguriert – Ohne das Hochleistungs-Backend skaliert es nur für kleinere Meetings (max. 2–3 Teilnehmer). Bitte richten Sie das Hochleistungs-Backend ein, um sicherzustellen, dass Meetings mit mehreren Teilnehmern reibungslos funktionieren. Weitere Informationen finden Sie in der Dokumentation :up_right_arrow:.

Ich gehe davon aus, dass ich weder die erste noch die zweite Meldung wegbekomme, die dritte per Konfiguration in NC und die vierte, indem ich die Talk-App deaktiviere.

Nun mache ich mich mal an die Migration …

  1. The config folder
  2. The data folder
  3. The theme folder
  4. The database

Das ließt sich ja relativ einfach:

  1. Ich setze eine frische NC bei Netcup auf.
  2. Ich ersetze die 3 mit den zuvor bei Manitu gesicherten Verzeichnissen.
  3. Ich spiele einen DB-Dump ein

Dann muss ich sicher noch hier und da Pfade in der config.php anpassen und occ maintenance:data-fingerprint absetzen.

Das Einzig problematische daran dürfte sein, die großen Datenmengen aus meinem data-Verzeichnis von dem einen auf den anderen Server zu schaffen …

Beste Grüße,
heinetz

Die Frage ist immer, was man für ein Hosting-Paket hat bzw. wo man gespart hat. Bei einem ordentlichen Hosting-Paket sollte man ssh/sftp haben, wo man dann die Daten ganz einfach per rsync mit ssh übertragen kann. Wenn man die Daten nur per ftp wie im letzten Jahrtausend übertragen kann, dann kann das schon problematischer sein. Ganz schlimm ist, wenn man es nur über den Umweg über zuhause übertragen kann.

Wenn beide Hoster ordentliche Kommunikationsprotokolle unterstützen, kann man von Provider zu Provider die Daten übertragen und spart den Datenengpass seiner eigenen DSL/Glasfaseranbindung.

1 Like

Gut, dann würde gerne prüfen, ob das geht. Wenn ich Dich richtig verstanden habe, müssen sowohl Quelle als auch Ziel das unterstützen.
@Crashandy Kannst Du beurteilen, ob Netcup Webhosting 2000 als Ziel das unterstützt?

Danke und
Beste Grüße,
heinetz

Mit FileZilla oder WinSCP funktioniert die SFTP-Übertragung perfekt, also sollte es auch mit rsync von einen anderen Anbieter funktionieren.

Nur am Rande. Zwischen Nur-Websern nutze ich gerne Tiny File Manger, der Upload from URL ermöglicht. Das kann auch den Unweg über zuhause sparen. Vorher zippen und danach entpacken.

1 Like

So, mein erster Versuch mit rsync ist gescheitert. Ich hoffe noch es liegt an mir …

$ rsync -r /home/sites/site100026682/web/herrhein.com/subdomains/test/ hosting221674@202.61.233.159:/web/herrhein.com/subdomains/test

Ich habe den Befehl im Terminal ausgeführt nachdem ich mich per SSH bei meinem aktuellen Webhosting-Account bei Manitu eingeloggt habe. Ich gehe davon aus, dass die absoluten Pfade beide korrekt sind und auf dem Server bei Netcup melde ich mich per SSH als hosting221674@202.61.233.159 an. Das ist die Ausgabe, nachdem ich den Befehl abgesetzt habe:

The authenticity of host '202.61.233.159 (202.61.233.159)' can't be established.
ED25519 key fingerprint is SHA256:+bPOwBYhKd1XMzO9mN7imUSK35SY/Z0MR6DvyIv0AGk.
This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/[fingerprint])? y 
Please type 'yes', 'no' or the fingerprint: yes
Warning: Permanently added '202.61.233.159' (ED25519) to the list of known hosts.
hosting221674@202.61.233.159's password: 
-: Zeile 1: rsync: Kommando nicht gefunden.
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(232) [sender=3.3.0]

Eine Idee habe ich, warum das nicht funktionieren könnte:

Bei Manitu habe ich einen SSH-Key hinterlegt und werde deshalb bei der Verbindung nicht nach einem Passwort gefragt. Bei Netup funktioniert die Verbindung nur mit Passworteingabe.

Habt Ihr eine Idee?

1000 Dank und
Beste Grüße,
heinetz

Na gut. Wer lesen kann …

rsync muss soweit ich das vestanden habe sowohl auf Quell- als auch auf dem Zielserver vorhanden sein und Netcup kennt den Befehl rsync nicht. Ich habe es nun nochmal mit scp versucht, aber auch nicht hinbekommen.

Allerdings ist mein data-Verzeichnis gezipt 14GB gross und ich werde das nun über den Umweg Zuhause verschieben.

Schau Dir bitte einmal diesen Link vom netcup Forum an. Es könnte eventuell Deine Lösung sein.

Du hast da ca. ein halbes Dutzend Syntax-Fehler ind dem rsync-Komanndo. Der wichtigste Syntax-Fehler:

  • du vergisst eine eine remote shell auszuwählen !!! So kannst du nur lokal gemountete Dateisysteme nutzen. Zudem solltest du
  • symbolische Links kopieren
  • die Rechte der Quelldatei beibehalten
  • die Zeiten der Quelldatei beibehalten
  • die Gruppenrechte der Quelldatei beibehalten
  • die Besitzrechte der Quelldatei beibehalten

Lies die Manpages von rsync

1 Like

Eigentlich gehört das nicht hier her. Das hier ist ja ein Hilfeforum für Nextcloud und keines für Linux-Nutzende. Aber ich will mal nicht so sein.

  • du musst eine remote shell auswählen. Die meisten Linuxer würden ssh nutzen: also fehlt der Parameter -e ssh bei dir um remote synchronisieren zu können.
  • die anderen fehlenden Parameter kannst du mit einem einzigen zusammenfassen. Die Option -a sollte man immer zu benutzen, um alle Rechte und Eigentümer der Quelldatei auf dem Zielmedium zu übernehmen. -a schließt -r gleich mit ein, ist dann also übeerflüssig
  • dann empfehle ich noch -v zu nutzen. Das zeigt während des Synchronisierens alle ausgeführten Schritte an

Zusammen also rsync -vae ssh. Dann die Pfade.

1 Like

Ich habe soeben eine 520 MB große Datei von Webspace zu Webspace kopiert und das Kopieren hat ca. 1 Sekunde gedauert. Mit Eingabe vom Passwort 14 Sekunden.
FINISHED --2025-06-14 16:23:13–
Total wall clock time: 14s
Downloaded: 2 files, 517M in 0.6s (829 MB/s)

wget -m --ftp-user=deinBenutzername --ask-password ftp://example.com/remote/pfad/zu/den/daten/ -P /lokaler/pfad/zum/speichern

Im Anschluss muss die Datei dann an Ihren richtigen Ort verschoben werden.

Im Ernst? ftp? Dabei wird ja nicht einmal das Passwort verschlüsselt übertragen. Von den Daten (wie öffentlich sollen die Daten einer Nextcloud sein) wollen wir lieber erst gar nicht reden. Wenn ftp dann doch bitte sftp.

wget mit sftp wird nicht unterstützt, daher wget mit der Option --ask-password und man muss das Passwort danach erst eingeben. Es wird nicht in der Konsole angezeigt und auch nicht im Verlauf gespeichert.
Das zu übertragene ZIP-File kann man auch zusätzlich verschlüsseln.

Das Passwort wird UNVERSCHLÜSSET an den remote-Server gesendet.
Man kann alles mögliche machen. Auch richtig leichtsinniges bis dummes.
Linux stellt aber sichere Tools bereit. Z.B. rsync mit ssh oder scp. Beide nutzen ssh. Das ist sicher. Nicht aber ftp.