Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 33 additions & 19 deletions src/common/core/backup/README.de.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,30 +2,32 @@ Das Backup-Plugin bietet eine automatisierte Backup-Lösung zum Schutz Ihrer Bun

**So funktioniert es:**

1. Ihre Datenbank wird automatisch gemäß dem von Ihnen festgelegten Zeitplan (täglich, wöchentlich oder monatlich) gesichert.
1. Ihre Datenbank wird automatisch gemäß dem von Ihnen festgelegten Zeitplan (`daily`, `weekly`, `monthly` oder `hanoi`) gesichert.
2. Backups werden in einem angegebenen Verzeichnis auf Ihrem System gespeichert.
3. Alte Backups werden automatisch basierend auf Ihren Aufbewahrungseinstellungen rotiert.
4. Sie können jederzeit manuell Backups erstellen, vorhandene Backups auflisten oder eine Wiederherstellung aus einem Backup durchführen.
5. Vor jeder Wiederherstellung wird der aktuelle Zustand als Sicherheitsmaßnahme automatisch gesichert.
3. Vor jedem Backup wird der verfügbare Speicherplatz geprüft.
4. Jede Backup-ZIP enthält den SQL-Dump und eine SHA-256-Prüfsummendatei (`.sha256`) zur Integritätsprüfung.
5. Alte Backups werden automatisch rotiert. Der Modus `hanoi` verwendet die Türme-von-Hanoi-Rotation (24 Dateien, ~85 Tage Abdeckung).
6. Beim Wiederherstellen wird die Prüfsumme verifiziert, bevor die aktive Datenbank verändert wird.
7. Sie können jederzeit manuell Backups erstellen, auflisten, prüfen oder wiederherstellen.
8. Vor jeder Wiederherstellung wird der aktuelle Zustand als Sicherheitsmaßnahme automatisch gesichert.

### Wie man es benutzt

Führen Sie die folgenden Schritte aus, um die Backup-Funktion zu konfigurieren und zu verwenden:

1. **Aktivieren Sie die Funktion:** Die Backup-Funktion ist standardmäßig aktiviert. Bei Bedarf können Sie dies mit der Einstellung `USE_BACKUP` steuern.
2. **Backup-Zeitplan konfigurieren:** Wählen Sie mit dem Parameter `BACKUP_SCHEDULE`, wie oft Backups durchgeführt werden sollen.
3. **Aufbewahrungsrichtlinie festlegen:** Geben Sie mit der Einstellung `BACKUP_ROTATION` an, wie viele Backups aufbewahrt werden sollen.
3. **Aufbewahrungsrichtlinie festlegen:** Geben Sie mit der Einstellung `BACKUP_ROTATION` an, wie viele Backups aufbewahrt werden sollen (wird bei `BACKUP_SCHEDULE=hanoi` ignoriert).
4. **Speicherort festlegen:** Wählen Sie mit der Einstellung `BACKUP_DIRECTORY`, wo die Backups gespeichert werden sollen.
5. **CLI-Befehle verwenden:** Verwalten Sie Backups bei Bedarf manuell mit den `bwcli plugin backup`-Befehlen.

### Konfigurationseinstellungen

| Einstellung | Standard | Kontext | Mehrfach | Beschreibung |
| ------------------ | ---------------------------- | ------- | -------- | -------------------------------------------------------------------------------------------------------------------- |
| `USE_BACKUP` | `yes` | global | nein | **Backup aktivieren:** Auf `yes` setzen, um automatische Backups zu aktivieren. |
| `BACKUP_SCHEDULE` | `daily` | global | nein | **Backup-Frequenz:** Wie oft Backups durchgeführt werden sollen. Optionen: `daily`, `weekly` oder `monthly`. |
| `BACKUP_ROTATION` | `7` | global | nein | **Backup-Aufbewahrung:** Die Anzahl der aufzubewahrenden Backup-Dateien. Ältere Backups werden automatisch gelöscht. |
| `BACKUP_DIRECTORY` | `/var/lib/bunkerweb/backups` | global | nein | **Backup-Speicherort:** Das Verzeichnis, in dem die Backup-Dateien gespeichert werden. |
| Einstellung | Standard | Kontext | Mehrfach | Beschreibung |
| ------------------ | ---------------------------- | ------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `USE_BACKUP` | `yes` | global | nein | **Backup aktivieren:** Auf `yes` setzen, um automatische Backups zu aktivieren. |
| `BACKUP_SCHEDULE` | `daily` | global | nein | **Backup-Frequenz:** `daily`, `weekly`, `monthly` oder `hanoi` (stündlich mit Türme-von-Hanoi-Rotation, ~85 Tage Abdeckung). |
| `BACKUP_ROTATION` | `7` | global | nein | **Backup-Aufbewahrung:** Anzahl der aufzubewahrenden Backup-Dateien. Wird bei `hanoi` ignoriert (Rotation wird automatisch verwaltet). |
| `BACKUP_DIRECTORY` | `/var/lib/bunkerweb/backups` | global | nein | **Backup-Speicherort:** Das Verzeichnis, in dem die Backup-Dateien gespeichert werden. |
| `BACKUP_IGNORE_CHECKSUM_ERROR_ON_DB_RESTORE` | `no` | global | nein | **Prüfsummenfehler ignorieren:** Bei `yes` wird ein fehlgeschlagener SHA-256-Check die Wiederherstellung nicht abbrechen. Nur als letztes Mittel verwenden. |

### Befehlszeilenschnittstelle

Expand All @@ -35,6 +37,9 @@ Das Backup-Plugin bietet mehrere CLI-Befehle zur Verwaltung Ihrer Backups:
# Alle verfügbaren Backups auflisten
bwcli plugin backup list

# SHA-256-Prüfsummen aller Backups prüfen
bwcli plugin backup check

# Ein manuelles Backup erstellen
bwcli plugin backup save

Expand All @@ -49,10 +54,13 @@ bwcli plugin backup restore /pfad/zum/backup/backup-sqlite-2023-08-15_12-34-56.z
```

!!! tip "Sicherheit geht vor"
Vor jeder Wiederherstellung erstellt das Backup-Plugin automatisch ein Backup des aktuellen Zustands Ihrer Datenbank an einem temporären Ort. Dies bietet eine zusätzliche Absicherung für den Fall, dass Sie die Wiederherstellung rückgängig machen müssen.
Vor jeder Wiederherstellung erstellt das Backup-Plugin automatisch ein Backup des aktuellen Zustands Ihrer Datenbank an einem temporären Ort.

!!! info "Integritätsprüfung"
Jede ZIP enthält eine SHA-256-Prüfsummendatei. Die Prüfsumme wird automatisch vor jeder Wiederherstellung verifiziert. Verwenden Sie `bwcli plugin backup check`, um alle Backups jederzeit zu prüfen.

!!! warning "Datenbankkompatibilität"
Das Backup-Plugin unterstützt SQLite, MySQL/MariaDB und PostgreSQL-Datenbanken. Oracle-Datenbanken werden derzeit für Backup- und Wiederherstellungsvorgänge nicht unterstützt.
Das Backup-Plugin unterstützt SQLite, MySQL/MariaDB und PostgreSQL-Datenbanken. Oracle-Datenbanken werden derzeit nicht unterstützt.

### Beispielkonfigurationen

Expand All @@ -67,9 +75,17 @@ bwcli plugin backup restore /pfad/zum/backup/backup-sqlite-2023-08-15_12-34-56.z
BACKUP_DIRECTORY: "/var/lib/bunkerweb/backups"
```

=== "Wöchentliche Backups mit erweiterter Aufbewahrung"
=== "Türme von Hanoi (~85 Tage)"

Stündliche Ausführung mit Türme-von-Hanoi-Rotation. Hält 24 Dateien mit ~85 Tagen Abdeckung. `BACKUP_ROTATION` wird ignoriert:

```yaml
USE_BACKUP: "yes"
BACKUP_SCHEDULE: "hanoi"
BACKUP_DIRECTORY: "/var/lib/bunkerweb/backups"
```

Konfiguration für seltenere Backups mit längerer Aufbewahrung:
=== "Wöchentliche Backups mit erweiterter Aufbewahrung"

```yaml
USE_BACKUP: "yes"
Expand All @@ -80,8 +96,6 @@ bwcli plugin backup restore /pfad/zum/backup/backup-sqlite-2023-08-15_12-34-56.z

=== "Monatliche Backups an einem benutzerdefinierten Speicherort"

Konfiguration für monatliche Backups, die an einem benutzerdefinierten Ort gespeichert werden:

```yaml
USE_BACKUP: "yes"
BACKUP_SCHEDULE: "monthly"
Expand Down
74 changes: 43 additions & 31 deletions src/common/core/backup/README.es.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,63 +2,69 @@ El complemento de copia de seguridad proporciona una solución de respaldo autom

**Cómo funciona:**

1. Su base de datos se respalda automáticamente según el cronograma que establezca (diario, semanal o mensual).
1. Su base de datos se respalda automáticamente según el cronograma que establezca (`daily`, `weekly`, `monthly` o `hanoi`).
2. Las copias de seguridad se almacenan en un directorio específico de su sistema.
3. Las copias de seguridad antiguas se rotan automáticamente según su configuración de retención.
4. Puede crear copias de seguridad manualmente, enumerar las copias de seguridad existentes o restaurar desde una copia de seguridad en cualquier momento.
5. Antes de cualquier operación de restauración, el estado actual se respalda automáticamente como medida de seguridad.
3. Antes de cada copia de seguridad se verifica el espacio libre en disco disponible.
4. Cada ZIP contiene el volcado SQL y un archivo de suma de verificación SHA-256 (`.sha256`) para verificar la integridad.
5. Las copias de seguridad antiguas se rotan automáticamente. El modo `hanoi` aplica la rotación Torres de Hanói (24 archivos, ~85 días de cobertura).
6. Al restaurar, la suma de verificación se comprueba antes de modificar la base de datos activa.
7. Puede crear, listar, verificar y restaurar copias de seguridad manualmente en cualquier momento.
8. Antes de cualquier operación de restauración, el estado actual se respalda automáticamente como medida de seguridad.

### Cómo usar

Siga estos pasos para configurar y utilizar la función de copia de seguridad:

1. **Habilite la función:** La función de copia de seguridad está habilitada por defecto. Si es necesario, puede controlarla con el ajuste `USE_BACKUP`.
2. **Configure el cronograma de copia de seguridad:** Elija la frecuencia con la que deben realizarse las copias de seguridad estableciendo el parámetro `BACKUP_SCHEDULE`.
3. **Establezca la política de retención:** Especifique cuántas copias de seguridad conservar utilizando el ajuste `BACKUP_ROTATION`.
4. **Defina la ubicación de almacenamiento:** Elija dónde se almacenarán las copias de seguridad utilizando el ajuste `BACKUP_DIRECTORY`.
5. **Use los comandos de la CLI:** Gestione las copias de seguridad manualmente con los comandos `bwcli plugin backup` cuando sea necesario.
2. **Configure el cronograma:** Elija la frecuencia con la que deben realizarse las copias de seguridad estableciendo el parámetro `BACKUP_SCHEDULE`.
3. **Establezca la política de retención:** Especifique cuántas copias conservar con `BACKUP_ROTATION` (se ignora si `BACKUP_SCHEDULE=hanoi`).
4. **Defina la ubicación:** Elija dónde se almacenarán las copias con `BACKUP_DIRECTORY`.
5. **Use los comandos de la CLI:** Gestione las copias manualmente con los comandos `bwcli plugin backup`.

### Ajustes de configuración

| Ajuste | Valor por defecto | Contexto | Múltiple | Descripción |
| ------------------ | ---------------------------- | -------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `USE_BACKUP` | `yes` | global | no | **Habilitar copia de seguridad:** Establezca en `yes` para habilitar las copias de seguridad automáticas. |
| `BACKUP_SCHEDULE` | `daily` | global | no | **Frecuencia de la copia de seguridad:** Con qué frecuencia se realizan las copias de seguridad. Opciones: `daily`, `weekly` o `monthly`. |
| `BACKUP_ROTATION` | `7` | global | no | **Retención de copias de seguridad:** El número de archivos de copia de seguridad que se deben conservar. Las copias de seguridad más antiguas que este número se eliminarán automáticamente. |
| `BACKUP_DIRECTORY` | `/var/lib/bunkerweb/backups` | global | no | **Ubicación de la copia de seguridad:** El directorio donde se almacenarán los archivos de copia de seguridad. |
| Ajuste | Valor por defecto | Contexto | Múltiple | Descripción |
| ------------------ | ---------------------------- | -------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `USE_BACKUP` | `yes` | global | no | **Habilitar copia de seguridad:** Establezca en `yes` para habilitar las copias automáticas. |
| `BACKUP_SCHEDULE` | `daily` | global | no | **Frecuencia:** `daily`, `weekly`, `monthly` o `hanoi` (horaria con rotación Torres de Hanói, ~85 días de cobertura). |
| `BACKUP_ROTATION` | `7` | global | no | **Retención:** Número de archivos a conservar. Se ignora con `hanoi` (la rotación se gestiona automáticamente). |
| `BACKUP_DIRECTORY` | `/var/lib/bunkerweb/backups` | global | no | **Ubicación:** El directorio donde se almacenarán los archivos de copia de seguridad. |
| `BACKUP_IGNORE_CHECKSUM_ERROR_ON_DB_RESTORE` | `no` | global | no | **Ignorar error de suma de verificación:** Si `yes`, un error SHA-256 no cancelará la restauración. Úselo solo como último recurso para backups parcialmente corruptos. |

### Interfaz de línea de comandos

El complemento de copia de seguridad proporciona varios comandos de la CLI para gestionar sus copias de seguridad:

```bash
# Listar todas las copias de seguridad disponibles
bwcli plugin backup list

# Verificar las sumas SHA-256 de todas las copias
bwcli plugin backup check

# Crear una copia de seguridad manual
bwcli plugin backup save

# Crear una copia de seguridad en una ubicación personalizada
# Crear una copia en una ubicación personalizada
bwcli plugin backup save --directory /ruta/a/ubicacion/personalizada

# Restaurar desde la copia de seguridad más reciente
# Restaurar desde la copia más reciente
bwcli plugin backup restore

# Restaurar desde un archivo de copia de seguridad específico
bwcli plugin backup restore /ruta/a/copia/de/seguridad/backup-sqlite-2023-08-15_12-34-56.zip
# Restaurar desde un archivo específico
bwcli plugin backup restore /ruta/a/copia/backup-sqlite-2023-08-15_12-34-56.zip
```

!!! tip "La seguridad es lo primero"
Antes de cualquier operación de restauración, el complemento de copia de seguridad crea automáticamente una copia de seguridad del estado actual de su base de datos en una ubicación temporal. Esto proporciona una protección adicional en caso de que necesite revertir la operación de restauración.
Antes de cualquier restauración, el complemento crea automáticamente una copia del estado actual en una ubicación temporal.

!!! info "Verificación de integridad"
Cada ZIP contiene un archivo SHA-256. La suma se verifica automáticamente antes de cualquier restauración. Use `bwcli plugin backup check` para comprobar todas las copias en cualquier momento.

!!! warning "Compatibilidad de la base de datos"
El complemento de copia de seguridad es compatible con las bases de datos SQLite, MySQL/MariaDB y PostgreSQL. Las bases de datos de Oracle no son compatibles actualmente para las operaciones de copia de seguridad y restauración.
El complemento es compatible con SQLite, MySQL/MariaDB y PostgreSQL. Las bases de datos Oracle no son compatibles actualmente.

### Configuraciones de ejemplo

=== "Copias de seguridad diarias con retención de 7 días"
=== "Copias diarias con retención de 7 días"

Configuración por defecto que crea copias de seguridad diarias y conserva los 7 archivos más recientes:
Configuración por defecto:

```yaml
USE_BACKUP: "yes"
Expand All @@ -67,9 +73,17 @@ bwcli plugin backup restore /ruta/a/copia/de/seguridad/backup-sqlite-2023-08-15_
BACKUP_DIRECTORY: "/var/lib/bunkerweb/backups"
```

=== "Copias de seguridad semanales con retención extendida"
=== "Torres de Hanói (~85 días)"

Configuración para copias de seguridad menos frecuentes con una retención más prolongada:
Ejecución horaria con rotación Torres de Hanói. Conserva 24 archivos con ~85 días de cobertura. `BACKUP_ROTATION` se ignora:

```yaml
USE_BACKUP: "yes"
BACKUP_SCHEDULE: "hanoi"
BACKUP_DIRECTORY: "/var/lib/bunkerweb/backups"
```

=== "Copias semanales con retención extendida"

```yaml
USE_BACKUP: "yes"
Expand All @@ -78,9 +92,7 @@ bwcli plugin backup restore /ruta/a/copia/de/seguridad/backup-sqlite-2023-08-15_
BACKUP_DIRECTORY: "/var/lib/bunkerweb/backups"
```

=== "Copias de seguridad mensuales en una ubicación personalizada"

Configuración para copias de seguridad mensuales almacenadas en una ubicación personalizada:
=== "Copias mensuales en ubicación personalizada"

```yaml
USE_BACKUP: "yes"
Expand Down
Loading
Loading