# Backup Nextcloud Netcup

**URL:** <https://help.nextcloud.com/t/backup-nextcloud-netcup/218186>\
**Category:** 🇩🇪 Deutsch (german)\
**Tags:** nextcloud, backup\
**Created:** [February 23, 2025, 2:09pm UTC](https://help.nextcloud.com/t/backup-nextcloud-netcup/218186 "2025-02-23T14:09:19Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![nextnew](https://help.nextcloud.com/user_avatar/help.nextcloud.com/nextnew/32/69400_2.png) [@nextnew](https://help.nextcloud.com/u/nextnew)\
**Post date:** [February 23, 2025, 2:09pm UTC](https://help.nextcloud.com/t/backup-nextcloud-netcup/218186/1 "2025-02-23T14:09:19Z")

</div>

Liebe Nutzer des deutschen **Sub** forums.

Es passiert leider häufig genug, dass ganz wesentliche Infos bei vielen Threads fehlen. Dabei weiß niemand außer Euch selbst, wie ihr eure Maschine(n) konfiguriert habt. Doch Informationen sind wesentlich für eventuelle Helfer.

Bitte beachtet beim Posten deshalb folgende kleine Hinweise - die erleichtern allen die Fehlersuche. Und sparen allen Zeit. Und auch Nerven 😉

- Bei welchen Anbieter? Was für ein Server? v-server, shared, root, usw. Oder Lokal?
- Netcup, Webspace
- Auf welcher Hardware? PC, Raspberry PI, Banana, NAS usw…
- Webspace
- Betriebssystem sowie Version ALLER beteiligten Systeme
- Nextcloud Version: [https://nextcloud.com/](https://nextcloud.com/)
- PHP Version: 7.4.33
- Welche Datenbank? MySQL

Hallo Community,

ich betreibe eine Nextcloud über Netcup. Für meine Zwecke hat es bisher gereicht. Mir ist allerdings auch ein Backup lieb und ab hier fangen die Probleme an. Ich würde gerne die “Backup” App von Nextcloud nutzen (nur bräuchte ich dafür erstmal eine höhere Nextcloud Version).  
Könntet ihr mir bitte helfen, wie ich ein Backup von meiner aktuellen Nextcloud-Instanz auf einem webspace anlege?  
Im nächsten Schritt würde ich nämlich gerne ein Update der Nextcloud Version vollziehen und dazu wäre eine Sicherung schon hilfreich.

Vielen Dank.

---

<div class="post-metadata">

**Author:** ![devnull](https://help.nextcloud.com/user_avatar/help.nextcloud.com/devnull/32/27793_2.png) [@devnull](https://help.nextcloud.com/u/devnull)\
**Post date:** [February 23, 2025, 2:31pm UTC](https://help.nextcloud.com/t/backup-nextcloud-netcup/218186/2 "2025-02-23T14:31:03Z")

</div>

Ordentliche Backups macht man so:

[Backup — Nextcloud latest Administration Manual latest documentation](https://docs.nextcloud.com/server/latest/admin_manual/maintenance/backup.html)

Und auf jedem Fall auf einem Testsystem ausprobieren, ob es wirklich funktioniert.

[Restoring backup — Nextcloud latest Administration Manual latest documentation](https://docs.nextcloud.com/server/latest/admin_manual/maintenance/restore.html)

---

<div class="post-metadata">

**Author:** ![nextnew](https://help.nextcloud.com/user_avatar/help.nextcloud.com/nextnew/32/69400_2.png) [@nextnew](https://help.nextcloud.com/u/nextnew)\
**Post date:** [February 23, 2025, 10:00pm UTC](https://help.nextcloud.com/t/backup-nextcloud-netcup/218186/3 "2025-02-23T22:00:04Z")

</div>

genau diese Anleitung habe ich gesehen und würde ich gerne umsetzen. Nur kann ich das per ssh auf einem webspace?

In einer anderen Anleitung wurde empfohlen den “data” und “config” Ordner der alten Nextcloud-Instanz zu sichern und in eine neue (aktualisierte) Nextcloud Instanz zu verschieben. Würden so auch die Ordnerstrukturen erhalten bleiben?

---

<div class="post-metadata">

**Author:** ![Crashandy](https://help.nextcloud.com/user_avatar/help.nextcloud.com/crashandy/32/57998_2.png) [@Crashandy](https://help.nextcloud.com/u/Crashandy)\
**Post date:** [February 24, 2025, 9:20am UTC](https://help.nextcloud.com/t/backup-nextcloud-netcup/218186/4 "2025-02-24T09:20:07Z")

</div>

> [@nextnew](#):
>
> Nur kann ich das per ssh auf einem webspace?

Ja, natürlich! Das ist der entscheidende Vorteil vom Webspace bei Netcup.

Mit der nachfolgenden beispielhaften Anleitung funktioniert bei mir das Backup und Restore perfekt. Bei einem fehlgeschlgenen Nextcloud-Update stelle ich nur die Nextcloud-Dateien wieder her. Nur in absolut seltenen Fällen muss die Nextcloud-Datenbank wiederhergestellt werden.

```auto
Anleitung für Backup und Restore von Nextcloud bei netcup

Bei Bedarf kann der Ordner data bei netcup sehr einfach über die Wiederherstellen-Funktion zurückgesichert werden, 
daher wird das schnelle Backup ohne den data-Ordner durchgeführt.
Alternativ die Option --exclude "data" bei der Sicherung weglassen, jedoch dauert die Datensicherung dann sehr lange.
Eine weitere Alternative wäre, bei größeren Nextcloud-Instanzen, den Ordner "data" in ein separates Verzeichnis auszulagern.

Pfade der Nextcloud und der Backups zum Beispiel:
/httpdocs/nextcloud
/httpdocs/backup

**********Backup**********
Wartungsmodus der Nextcloud einschalten:
php -d memory_limit=512M /httpdocs/nextcloud/occ maintenance:mode --on

Komplettes Verzeichnis "nextcloud", außer dem Ordner "data" sichern:
tar --exclude "data" -cjpf ./httpdocs/backup/`date +%Y-%m-%d`_nextcloud.tar.bz2 ./httpdocs/nextcloud/

Datenbank sichern:
mysqldump --single-transaction -h'IP-Adresse (intern)' -u'Benutzername' -p'Passwort' 'Datenbankname' > /httpdocs/backup/`date +%Y-%m-%d`_nextcloud-sqlbkp.bak

Wartungsmodus der Nextcloud ausschalten:
php -d memory_limit=512M /httpdocs/nextcloud/occ maintenance:mode --off

**********Restore**********
Wartungsmodus der Nextcloud einschalten:
php -d memory_limit=512M /httpdocs/nextcloud/occ maintenance:mode --on

Sicherung wiederherstellen (Datum der Datei einfügen):
tar -xf httpdocs/backup/####-##-##_nextcloud.tar.bz2 -C ./

Datenbank wiederherstellen (Datum der Datei einfügen):
*****Optional*****
mysql -h'IP-Adresse (intern)' -u'Benutzername' -p'Passwort' -e "DROP DATABASE 'Datenbankname'"
mysql -h'IP-Adresse (intern)' -u'Benutzername' -p'Passwort' -e "CREATE DATABASE 'Datenbankname' CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci"
*****Optional Ende*****
mysql -h'IP-Adresse (intern)' -u'Benutzername' -p'Passwort' 'Datenbankname' < /httpdocs/backup/####-##-##_nextcloud-sqlbkp.bak

Wartungsmodus der Nextcloud ausschalten:
php -d memory_limit=512M /httpdocs/nextcloud/occ maintenance:mode --off

Systemdatenfingerabdruck nach der Wiederherstellung einer Sicherung aktualisieren
php -d memory_limit=512M /httpdocs/nextcloud/occ maintenance:data-fingerprint

```

Ergänzung:

> [@devnull](#):
>
> Ordentliche Backups macht man so:

Der rsync Befehl würde um ein Vielfaches schneller gehen, jedoch ist dieser Befehl im Webspace nicht gestattet.

---

<div class="post-metadata">

**Author:** ![nextnew](https://help.nextcloud.com/user_avatar/help.nextcloud.com/nextnew/32/69400_2.png) [@nextnew](https://help.nextcloud.com/u/nextnew)\
**Post date:** [February 26, 2025, 6:53pm UTC](https://help.nextcloud.com/t/backup-nextcloud-netcup/218186/5 "2025-02-26T18:53:19Z")

</div>

danke sehr. wenn ich das recht sehe, dann soll ich mich per ssh auf den webspace schalten und dann direkt von dort aus “php…” ausführen? Sicherst du dir dann das “/backup” auf den Rechner oder verbleibt das auf dem Webspace?

---

<div class="post-metadata">

**Author:** ![nextnew](https://help.nextcloud.com/user_avatar/help.nextcloud.com/nextnew/32/69400_2.png) [@nextnew](https://help.nextcloud.com/u/nextnew)\
**Post date:** [February 26, 2025, 6:56pm UTC](https://help.nextcloud.com/t/backup-nextcloud-netcup/218186/6 "2025-02-26T18:56:21Z")

</div>

für rsync alternative auf Netcup wird scheinbar das hier empfohlen. ich verstehe allerdings nicht wie es funktionieren sollte oder wie das mittels git funktionieren sollte.

> **[rsync beim Webhosting ? - netcup Community](https://forum.netcup.de/netcup-anwendungen/wcp-webhosting-control-panel/p209763-rsync-beim-webhosting/#post209763)**
>
> Bei den Binaries im Webhosting fehlt leider aktuell rsync.
> Das ist nicht nur für den effizienten File Transfer interessant, sondern wird auch von einigen Update Scripten benötigt, z.B. roundcube.
> 
> Besteht die Möglichkeit rsync offiziell zu...

> **[rsync beim Webhosting ? - netcup Community](https://forum.netcup.de/netcup-anwendungen/wcp-webhosting-control-panel/p236504-rsync-beim-webhosting/#post236504)**
>
> Bei den Binaries im Webhosting fehlt leider aktuell rsync.
> Das ist nicht nur für den effizienten File Transfer interessant, sondern wird auch von einigen Update Scripten benötigt, z.B. roundcube.
> 
> Besteht die Möglichkeit rsync offiziell zu...

---

<div class="post-metadata">

**Author:** ![Crashandy](https://help.nextcloud.com/user_avatar/help.nextcloud.com/crashandy/32/57998_2.png) [@Crashandy](https://help.nextcloud.com/u/Crashandy)\
**Post date:** [February 26, 2025, 7:26pm UTC](https://help.nextcloud.com/t/backup-nextcloud-netcup/218186/7 "2025-02-26T19:26:11Z")

</div>

Schau Dir einmal die verschiedenen Optionen von rsync an und vergleiche es mit git. Ich glaube hier wird von verschiedenen Dingen geredet.  
Wichtig für ein ordentliches Backup der Nextcloud ist, dass man eine Wiederherstellung machen kann in welcher auch alle Dateiberechtigungen wieder am alten Ort sind.  
Ich habe meine Backups mit einer kompletten Wiederherstellung der Nextcloud getestet und es war danach so, als wäre nie etwas geschehen. 😉

---

<div class="post-metadata">

**Author:** ![nextnew](https://help.nextcloud.com/user_avatar/help.nextcloud.com/nextnew/32/69400_2.png) [@nextnew](https://help.nextcloud.com/u/nextnew)\
**Post date:** [February 26, 2025, 8:03pm UTC](https://help.nextcloud.com/t/backup-nextcloud-netcup/218186/8 "2025-02-26T20:03:32Z")

</div>

was super klingt 🙂 hast du das dann irgendwie noch automatisiert oder so?

---

<div class="post-metadata">

**Author:** ![nextnew](https://help.nextcloud.com/user_avatar/help.nextcloud.com/nextnew/32/69400_2.png) [@nextnew](https://help.nextcloud.com/u/nextnew)\
**Post date:** [February 26, 2025, 8:20pm UTC](https://help.nextcloud.com/t/backup-nextcloud-netcup/218186/9 "2025-02-26T20:20:00Z")

</div>

da fangen die Probleme schon an 😃

```auto
php -d memory_limit=512M /httpdocs/nextcloud/occ maintenance:mode --on
Your data directory is invalid
Ensure there is a file called ".ocdata" in the root of the data directory.

Cannot create "data" directory
This can usually be fixed by giving the webserver write access to the root directory. See https://docs.nextcloud.com/server/22/go.php?to=admin-dir_permissions

An unhandled exception has been thrown:
Exception: Environment not properly prepared. in /httpdocs/nextcloud/lib/private/Console/Application.php:162
Stack trace:
#0 /httpdocs/nextcloud/console.php(98): OC\Console\Application->loadCommands(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#1 /httpdocs/nextcloud/occ(11): require_once('/httpdocs/nextc...')

```

Wie löse ich das am besten auf?

ssh-zugriff ist eingestellt auf  
`/bin/bash (chrooted)`

---

<div class="post-metadata">

**Author:** ![Crashandy](https://help.nextcloud.com/user_avatar/help.nextcloud.com/crashandy/32/57998_2.png) [@Crashandy](https://help.nextcloud.com/u/Crashandy)\
**Post date:** [February 26, 2025, 9:00pm UTC](https://help.nextcloud.com/t/backup-nextcloud-netcup/218186/10 "2025-02-26T21:00:43Z")

</div>

Oje, das ist schon etliche Jahre her, aber ich denke da musst Du noch eine Datei in den config Ordner Deiner Nextcloud hineinlegen.

```auto
/httpdocs/nextcloud/config/data.config.php

```

Datei data.config.php mit folgendem Inhalt anlegen.

```auto
<?php

$CONFIG['datadirectory'] = realpath( __dir__. '/../data');

```

Anschließend die Zeile

```auto
  'datadirectory' => '/var/www/vhosts/hosting123456.abc45.netcup.net/httpdocs/nextcloud/data',

```

aus der config.php entfernen.

Somit wird bei den Befehlen im SSH-Zugang immer der Realpfad verwendet.

---

<div class="post-metadata">

**Author:** ![devnull](https://help.nextcloud.com/user_avatar/help.nextcloud.com/devnull/32/27793_2.png) [@devnull](https://help.nextcloud.com/u/devnull)\
**Post date:** [February 27, 2025, 3:47pm UTC](https://help.nextcloud.com/t/backup-nextcloud-netcup/218186/11 "2025-02-27T15:47:41Z")

</div>

> [@nextnew](#):
>
> ```auto
> php -d memory_limit=512M /httpdocs/nextcloud/occ maintenance:mode --on
> Your data directory is invalid
> Ensure there is a file called ".ocdata" in the root of the data directory.
> 
> ```

Sofern du eine aktuell laufende Nextcloud hast, wirst du ein `data`-Verzeichnis haben, denn sonst würde sie gar nicht laufen. Hierauf muss der Webserver-Benutzer und in deinem Fall aufgrund eingeschränkter Netcup-Berechtigungen (bei Webspace) wahrscheinlich dein Benutzer Zugriff haben.

Such doch erst mal den data-Ordner.  
`find . -name "data"`

Es ist wahrscheinlich `/httpdocs/nextcloud/data`. Dort muss es eine `.ocdata`-Datei geben. Wenn nicht, leg sie an.  
`touch /httpdocs/nextcloud/data/.ocdata`  
(verwende den korrekten Pfad)

Ich empfehle dir dringend dein Linux-Wissen zu verbessern. Falls du wichtige Daten in deiner Nextcloud speichern willst, besorge dir vielleicht besser eine **Managed Nextcloud** z. B. [Storage Share von Hetzner](https://www.hetzner.com/de/storage/storage-share/) um nur ein Beispiel zu nennen. Da sparst du dir den ganzen Ärger. Backups musst du trotzdem machen. Oder du suchst dir eine Managed Nextcloud inkl. Backup.

---

<div class="post-metadata">

**Author:** ![nextnew](https://help.nextcloud.com/user_avatar/help.nextcloud.com/nextnew/32/69400_2.png) [@nextnew](https://help.nextcloud.com/u/nextnew)\
**Post date:** [March 3, 2025, 7:13pm UTC](https://help.nextcloud.com/t/backup-nextcloud-netcup/218186/12 "2025-03-03T19:13:35Z")

</div>

danke sehr. ich habe noch eine alte Nextcloud Version und möchte diese sehr gerne Update. Deshalb diese Backup-Frage, damit beim Update nichts schief gehen wird.

---

<div class="post-metadata">

**Author:** ![nextnew](https://help.nextcloud.com/user_avatar/help.nextcloud.com/nextnew/32/69400_2.png) [@nextnew](https://help.nextcloud.com/u/nextnew)\
**Post date:** [March 3, 2025, 7:15pm UTC](https://help.nextcloud.com/t/backup-nextcloud-netcup/218186/13 "2025-03-03T19:15:54Z")

</div>

eine alte nextcloud-version: 22.1.0

Eine Internet-Anleitung für Updates empfahl ich solle die data + config speichern und ansonsten einfach ein neues Nextcloud auf den ftp hochladen. Ist diese Vorgehensweise empfehlenswert oder sollte ich lieber über ssh commands updaten? Sobald mal das Backup steht.

---

<div class="post-metadata">

**Author:** ![nextnew](https://help.nextcloud.com/user_avatar/help.nextcloud.com/nextnew/32/69400_2.png) [@nextnew](https://help.nextcloud.com/u/nextnew)\
**Post date:** [March 3, 2025, 7:17pm UTC](https://help.nextcloud.com/t/backup-nextcloud-netcup/218186/14 "2025-03-03T19:17:48Z")

</div>

danke für den Tipp mit Manged Nextcloud. Ich würde es ja gerne lernen, deshalb nutze ich euer Forum und euer Wissen. Ich habe schlicht eine zu alte Nextcloud Version (weil ich eben zu lange mit Updates gewartet habe) und stoße daher auf diese Fehler, meiner Meinung nach. Ich bin eher mit Mac OS/Windows produktiv unterwegs, weniger mit Linux. Daher auch mein geringes Linux-Wissen.

---

<div class="post-metadata">

**Author:** ![Crashandy](https://help.nextcloud.com/user_avatar/help.nextcloud.com/crashandy/32/57998_2.png) [@Crashandy](https://help.nextcloud.com/u/Crashandy)\
**Post date:** [March 3, 2025, 9:11pm UTC](https://help.nextcloud.com/t/backup-nextcloud-netcup/218186/16 "2025-03-03T21:11:35Z")

</div>

Ich hatte mir damals (April 2023) für den Webspace bei Netcup eine Notiz gemacht. Betrifft die PHP-Einstellungen der Subdomain für die Nextcloud.

> Ab Nextcloud Version 26.0.1 muss nun open\_basedir auf diesen Wert geändert werden.
> 
> {WEBSPACEROOT}{/}{:}{TMP}{/}{:}{/}var{/}lib{/}php{/}sessions
> 
> Alle anderen Werte bleiben auf Standard stehen.

Eventuell könnte das zum Ziel führen.

---

<div class="post-metadata">

**Author:** ![nextnew](https://help.nextcloud.com/user_avatar/help.nextcloud.com/nextnew/32/69400_2.png) [@nextnew](https://help.nextcloud.com/u/nextnew)\
**Post date:** [March 3, 2025, 10:04pm UTC](https://help.nextcloud.com/t/backup-nextcloud-netcup/218186/17 "2025-03-03T22:04:09Z")

</div>

wie kann ich diesen code hinterlegen?  
mittels euch, chatgpt hab ich tatsächlich 1 Durchlauf backup hinbekommen 🙂 werde nochmal die aktuellere code-variante angeben, damit du ggf. den Backup-Code oben aktualisieren kannst.

---

<div class="post-metadata">

**Author:** ![Crashandy](https://help.nextcloud.com/user_avatar/help.nextcloud.com/crashandy/32/57998_2.png) [@Crashandy](https://help.nextcloud.com/u/Crashandy)\
**Post date:** [March 4, 2025, 6:59am UTC](https://help.nextcloud.com/t/backup-nextcloud-netcup/218186/18 "2025-03-04T06:59:13Z")

</div>

> [@nextnew](#):
>
> wie kann ich diesen code hinterlegen?

Diese Einstellungen musst Du im Webhostingcontrolpanel (WCP) unter dem Punkt “PHP” tätigen. Dann gibt es noch die Apache-Einstellungen. Dort musst Du unter “Zusätzliche Header” noch fden folgenden Wert eintragen.

> Strict-Transport-Security: max-age=15552000;IncludeSubDomains

Zuletzt noch die in meinem [Beitrag](https://help.nextcloud.com/t/backup-nextcloud-netcup/218186/10) beschriebene Datei in den config Ordner der Nextcloud hineinlegen und dann sollte alles passen.

---

<div class="post-metadata">

**Author:** ![rit2017](https://help.nextcloud.com/letter_avatar/rit2017/32/5_5575768a8748004e209b776fc1b2916d.png) [@rit2017](https://help.nextcloud.com/u/rit2017)\
**Post date:** [March 4, 2025, 10:38pm UTC](https://help.nextcloud.com/t/backup-nextcloud-netcup/218186/19 "2025-03-04T22:38:21Z")

</div>

Hallo Zusammen,  
besten Dank für diesen Post. Anhand dessen konnte ich jetzt so ziemlich erfolgreich von Strato zu Netcup mit der Nextcloud umziehen. Vor dem Umzug hat alles funktioniert und ich habe auf dem alten System noch alles auf den neusten Stand gebracht, bevor ich nach eurem Austausch und den Tipps von Crashandy vorgegangen bin. Dafür nochmals einen besonderen Dank!

Bei /occ maintenance:repair bekomme ich allerdings noch Fehler ausgeworfen:

An unhandled exception has been thrown:  
Error: Failed opening required ‘/httpdocs/cloud.xxxxx.xx/3rdparty/symfony/string/Resources/data/wcswidth\_table\_zero.php’ (include\_path=‘/httpdocs/cloud.xxxxx.xx/3rdparty/pear/archive\_tar:/httpdocs/cloud.xxxxx.xx/3rdparty/pear/console\_getopt:/httpdocs/cloud.xxxxx.xx/3rdparty/pear/pear-core-minimal/src:/httpdocs/cloud.xxxxx.xx/3rdparty/pear/pear\_exception:/httpdocs/cloud.xxxxx.xx/apps’) in /httpdocs/cloud.xxxxx.xx/3rdparty/symfony/string/AbstractUnicodeString.php:562

Hat das jemand von euch vielleicht auch schon gehabt oder eine Idee wie ich das auch noch gefixt bekomme?

1000 Dank  
Niko

---

<div class="post-metadata">

**Author:** ![Crashandy](https://help.nextcloud.com/user_avatar/help.nextcloud.com/crashandy/32/57998_2.png) [@Crashandy](https://help.nextcloud.com/u/Crashandy)\
**Post date:** [March 5, 2025, 8:21am UTC](https://help.nextcloud.com/t/backup-nextcloud-netcup/218186/20 "2025-03-05T08:21:06Z")

</div>

Hallo @rit2017

Welche PHP-Version läuft in Deinem Webhosting?  
php -v  
Bei mir ist die Version 8.3 voreingestellt.

```auto
bash-5.1$ php -v
PHP 8.3.16 (cli) (built: Feb 11 2025 12:06:58) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.3.16, Copyright (c) Zend Technologies
    with the ionCube PHP Loader v14.4.0, Copyright (c) 2002-2025, by ionCube Ltd.
    with Zend OPcache v8.3.16, Copyright (c), by Zend Technologies

```

Gruß Crashandy

---

<div class="post-metadata">

**Author:** ![devnull](https://help.nextcloud.com/user_avatar/help.nextcloud.com/devnull/32/27793_2.png) [@devnull](https://help.nextcloud.com/u/devnull)\
**Post date:** [March 5, 2025, 9:33am UTC](https://help.nextcloud.com/t/backup-nextcloud-netcup/218186/21 "2025-03-05T09:33:52Z")

</div>

> [@rit2017](#):
>
> Error: Failed opening required ‘/httpdocs/cloud.xxxxx.xx/3rdparty/symfony/string/Resources/data/wcswidth\_table\_zero.php’

Schau mal ob die Datei existiert und von deinem Webserver-Account gelesen werden kann:  
`/httpdocs/cloud.xxxxx.xx/3rdparty/symfony/string/Resources/data/wcswidth_table_zero.php`

[Next page](https://help.nextcloud.com/t/backup-nextcloud-netcup/218186.md?page=2)
