54 lines
1.2 KiB
Bash
54 lines
1.2 KiB
Bash
#!/bin/bash
|
|
|
|
# Überprüfen, ob alle erforderlichen Parameter übergeben wurden
|
|
if [ "$#" -ne 3 ]; then
|
|
echo "Usage: $0 <config_backup_file> <data_backup_file> <db_backup_file>"
|
|
exit 1
|
|
fi
|
|
|
|
# Parameter zuweisen
|
|
CONFIG_BACKUP_FILE=$1
|
|
DATA_BACKUP_FILE=$2
|
|
DB_BACKUP_FILE=$3
|
|
|
|
# Verzeichnisse und Datenbank-Details
|
|
CONFIG_DIR="/etc/gitea"
|
|
DATA_DIR="/var/lib/gitea"
|
|
DB_NAME="gitea_db"
|
|
DB_USER="gitea_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
|
|
|
|
# Gitea stoppen
|
|
systemctl stop gitea
|
|
|
|
# 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
|
|
|
|
# Gitea starten
|
|
systemctl start gitea
|
|
|
|
echo "Backup erfolgreich zurückgespielt."
|
|
|
|
exit 0 |