#!/bin/bash # Überprüfen, ob alle erforderlichen Parameter übergeben wurden if [ "$#" -ne 3 ]; then echo "Usage: $0 " exit 1 fi # Parameter zuweisen CONFIG_BACKUP_FILE=$1 DATA_BACKUP_FILE=$2 DB_BACKUP_FILE=$3 # Verzeichnisse und Datenbank-Details CONFIG_DIR="/var/www/nextcloud/config" DATA_DIR="/mnt/nvmedrv/nextcloud/data" DB_NAME="nextcloud_db" DB_USER="nextcloud_user" DB_PASS="your_password" # Sicherstellen, dass die Backup-Dateien existieren if [ ! -f "$CONFIG_BACKUP_FILE" ]; then echo "Konfigurations-Backup-Datei nicht gefunden: $CONFIG_BACKUP_FILE" exit 1 fi if [ ! -f "$DATA_BACKUP_FILE" ]; then echo "Daten-Backup-Datei nicht gefunden: $DATA_BACKUP_FILE" exit 1 fi if [ ! -f "$DB_BACKUP_FILE" ]; then echo "Datenbank-Backup-Datei nicht gefunden: $DB_BACKUP_FILE" exit 1 fi # Nextcloud in den Wartungsmodus versetzen sudo -u www-data php /var/www/nextcloud/occ maintenance:mode --on # Konfiguration zurückspielen tar -xzf $CONFIG_BACKUP_FILE -C $CONFIG_DIR # Daten zurückspielen tar -xzf $DATA_BACKUP_FILE -C $DATA_DIR # Datenbank zurückspielen mysql -u $DB_USER -p$DB_PASS $DB_NAME < $DB_BACKUP_FILE # Nextcloud aus dem Wartungsmodus nehmen sudo -u www-data php /var/www/nextcloud/occ maintenance:mode --off echo "Backup erfolgreich zurückgespielt." exit 0