Zum Inhalt

Backup und für den klassischen charly Server

Die Dateien und Postgres-Datenbank-Dumps können mit dem charly-server-Skript von einer klassischen charly-Installation gesichert werden. Es kann auch ein tägliches Backup konfiguriert werden.

Während des Backups laufen alle Java-Services und charly-Clients weiter.

Es werden folgende Daten exportiert:

  • Die Dateien (typischerweise aus dem /Applications/Solutio/Client/Charly)
  • Die Postgres-Datenbanken werden in Datenbank-Dump Dateien gesichert.
  • Relevante Konfigurationsdateien werden in einen Unterordner config exportiert.
  • Bei der neuen, inkrementellen Backup-Variante, werden die Backup-Daten in einem Restic Backup gesichert.
  • All diese Daten können optional in eine export.iso gebündelt werden.

Schnellkonfiguration

Für erfahrene Nutzer, wird hier alles Wichtige in Kürze zusammengefasst.

Homebrew installieren:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

charly-server Skript installieren:

/bin/zsh -c "$(curl -fsSL https://charly-cdn-solutio.s3.amazonaws.com/release/macos/charly-server-install.zsh)"

Backup manuell erstellen:

charly-server export normal -skip_iso true -backup_variant advanced

Tägliches Backup konfigurieren:

charly-server export backup-config

charly-server Skript und brew installieren

Zuerst muss der macOS Paketmanager brew installiert werden

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

WICHTIG

Am Ende fordert die brew Installation auf, noch einige Dinge als "Next steps" in der Kommandozeile einzugeben. Führen Sie die 3 Kommandos nacheinander aus.

Prüfen, ob homebrew schon installiert ist:

brew --version

Hier sollte eine Versionnummer ausgegeben werden.

Dann kann das charly-server Skript mit folgendem Befehl installiert werden:

/bin/zsh -c "$(curl -fsSL https://charly-cdn-solutio.s3.amazonaws.com/release/macos/charly-server-install.zsh)"

Prüfen, ob charly-server installiert wurde:

charly-server -help

Manuelles Backup erstellen

Wenn folgender Befehl ohne zustzliche Parameter ausgeführt wird, werden Standard-Parameter verwendet und das Skript sucht selbstständig nach der Postgres Datenbank.

charly-server export normal

Dies würde aber per default auch eine ISO-Datei erzeugen, die nicht notwendig ist (hat historischen Gründe, warum das der default ist). Um ein Backup ohne ISO erzeugen:

charly-server export normal -skip_iso true

Beim ersten Aufruf wird abgefragt, ob das neue, inkrementelle Backup-Verfahren (advanced), oder das alte, einfache Backup-Verfahren angewendet werden soll. Das inkrementelle Backup-Verfahren wird empfohlen. Das kann auch als Parameter angegeben werden (simple oder advanced):

charly-server export normal -backup_variant advanced

Bevor der eigentliche Export beginnt, muss die Konfiguration noch bestätigt werden.

Das Kommando kann auch mit weiteren Parametern aufgerufen werden, um die Konfiguration zu ändern.

charly-server export normal -export_path /tmp/export

Backup-Varianten

Es gibt 2 Varianten ein Backup zu erstellen:

Variante Beschreibung
Inkrementell Backup (advanced) Ein modernes Backup-Verfahren, dass auf der Backup-Software Restic basiert und die letzten 31 Backups platzsparend sichert. Dieses ist das empfohlene Verfahren.
Einfaches Backup (simple) Sichert die Datenbank eines Backups als .sql Dateien, die Dateien als charly.7z und die Konfiguration. Dieses Verfahren ist veraltet, funktioniert aber weiterhin.

Backup-Modi

Es kann entweder ein Vollbackup oder nur ein Datenbank-Backup erstellt werden.

Modus Beschreibung
normal Vollständiger Backup, sichert Datenbank, Dateien und Konfigurationen
databaseonly Nur Datenbank Backup

Typische Parameter

Parameter Beschreibung Standard
-solutio_path Installationsverzeichnis von Solutio /Application/Solutio
-export_path Zielverzeichnis für den Export ~/charly-server-export
-iso_file_path Pfad zur ISO-Datei ~/charly-server-export/export.iso
-postgres_path PostgreSQL-Installationsverzeichnis /Library/solutio_postgresql
-postgres_port PostgreSQL-Port 5432
-silent Das Skript wird ohne Nachfragen ausgeführt. Nützlich für regelmäßige Backups

Für mehr Informationen:

charly-server export -help

Tägliches Backup konfigurieren

Es ist möglich, einen täglicher Export zu konfiguriern:

charly-server export backup-config
Auch hier werden Standard-Parameter verwendet und das Skript sucht selbstständig nach der Postgres Datenbank. Bevor die eigentliche Konfiguration beginnt, muss die Konfiguration bestätigt werden. Oder sie kann abgebrochen und das Kommando dann mit weiteren oder anderen Parametern gestartet werden.

Bei der Konfiguration werden Sie gefragt:

  • Backup Variante: Empfohlen wird 1, inkrementelles Backup
  • Backup Typ: Empfohlen wird 1, normal
  • Backup Zeit: Angabe von Stunde und Minute. Empfohlen wird ein Zeitpunkt in der Nacht
  • ISO erstellen: Eine ISO Datei wird nicht benötigt, kann aber zusätzlich das Backup als Einzeldatei enthalten. Empfohlen wird, diese nicht zu erstellen, um das Backup zu beschleunigen und Platz zu sparen

WICHTIG

Ein täglicher Export ist in die typischen Benutzer-Verzeichnisse, wie Dokumente, Schreibtisch und SMB-Shares, nicht möglich, da der root User beim täglichen Backup nicht in diese Verzeichnisse schreiben kann. Es erscheint dann eine Warnung. Geben Sie einen anderen -export_path an.

Besonderheiten des inkrementellen Restic Backup

Liste aller Backups

Es können die letzten 10 Backups angezeigt werden:

charly-server manage backup-list

Es können auch mehr oder weniger Backups angezeigt werden:

charly-server manage backup-list -count 20

Es können auch die Größen der Backups angezeigt werden. Dies sollte man aber nur mit wenigen Backups machen, da es sonst länger dauert:

charly-server manage backup-list -count 3 -show_sizes

Restic Browser

Die charly-Server Skript-Kommandos kümmern sich bei der inkrementellen Backup-Variante um das Sichern und Wiederherstellen im Restic Backup. Es ist aber möglich, in das Restic Backup hinein zu sehen.

Im Export Verzeichnis befindet sich, wenn dass neue, inkementelle Backup erzeugt wurde, ein Ordner restic_repository. Dieser läßt sich mit einem freien Tool, zB. Restic Browser öffnen. Tragen Sie als Passwort "restic_password" ein.

Dieses Passwort ist aktuell nur pro-forma, aber es ist für ein zukünftiges Update geplant, dass dieses Passwort personalisiert werden kann.

Wiederherstellung einer Installation

Mit den Export-Daten kann sowohl eine klasische Installation wiederhergestellt werden. Aber es kann damit auch eine charly VM installiert werden, also ein Umzug statt finden.

Es wird empfohlen, im Falle einer Wiederherstellung, eine charly VM zu installieren.

Klassische Installation

Führen Sie folgendes Kommando aus:

charly-server manage restore

Sie werden dann gefragt, ob Sie fortfahren wollen. Dieses Kommando stellt alle Daten aus einem vorhanden Backup wieder her. Wenn die inkrementelle Backup-Variante verwendet wurde, kann dann ausgewählt werden, welches Backup wiederhergestellt werden soll.

charly VM Installation

Folgen Sie dafür der Anleitung für die Migration auf die charly-VM.


Version: 2.8.7

Datum: 20.11.2025