Teil 11 der grommunio-2026-Serie prüft Disaster Recovery und Single-Mailbox-Restore nicht theoretisch, sondern in einem isolierten QEMU-Lab mit grommunio 2026.06.1. Getestet wurden ein vollständiger Restore einer frischen Appliance sowie ein gezielter Mailbox-Import in eine andere Zielmailbox.
Kurzüberblick
Full DR: SQL-Dump, /var/lib/gromox und relevante Konfigurationen gesichert und auf einer separaten Restore-VM wiederhergestellt.
Single Mailbox Restore: Mailbox als Gromox Mailbox Transfer exportiert und in eine zweite Mailbox importiert.
Visuelle Abnahme: Admin UI und grommunio Web zeigen wiederhergestellte Benutzer und Mails.
Ergebnis: FULL_DR = PASS, SINGLE_MAILBOX_RESTORE = PASS.
Getestete Grundlage
Die Tests liefen auf einer grommunio 2026.06.1 Appliance. Für den Restore wurde nicht dieselbe VM weiterverwendet, sondern eine getrennte Restore-VM aus einer sauberen Baseline gestartet und ausschließlich aus den Backup-Artefakten befüllt.
cat /etc/os-releasegrommunio-admin versionrpm -qa | grep -E "^(grommunio|gromox|mariadb|nginx|postfix|redis)" | sortsystemctl --failed
Testdaten
Für die Abnahme wurde eine eigene lokale Testdomain mit drei Benutzern angelegt. Die Namen im Artikel sind Lab-Beispiele; produktive Zugangsdaten oder interne Recovery-Secrets wurden nicht verwendet.
- Domain: restore.test
- Quellmailbox: druser@restore.test
- Zielmailbox für den geprüften Restore: restoretarget2@restore.test
- Testmails: DR-FULL-BASELINE-20260915-A und DR-SINGLE-RESTORE-20260915-B
Backup erstellen
Für den Full-DR-Test wurden Datenbank, Gromox-Stores und zentrale Konfiguration getrennt gesichert. Zusätzlich wurde ein Mailbox-Transferstream für den späteren Single-Mailbox-Restore erzeugt.
mysqldump --all-databases --single-transaction --routines --triggers --events --add-drop-database > grommunio-mysql-all.sqltar --xattrs --acls -czf gromox-varlib.tar.gz -C /var/lib gromoxtar --xattrs --acls -czf grommunio-etc.tar.gz /etc/grommunio* /etc/gromox /etc/nginx /etc/postfixgromox-exm2mt -u druser@restore.test -ar / > druser-full-mailbox.mtsha256sum * > SHA256SUMS
Bildnachweis: Backup-Artefakte und Prüfsummen
Die gesicherten Artefakte wurden mit SHA256 geprüft. Der Mailbox-Export enthält beide Testmails, die später im Full-DR- und Single-Mailbox-Restore wieder auftauchen.
Full Disaster Recovery wiederherstellen
Die Restore-VM startete ohne die Testdomain. Danach wurden Dienste gestoppt, Daten und Konfigurationen eingespielt, die Datenbank importiert und die grommunio-Dienste neu gestartet.
systemctl stop postfix gromox-delivery gromox-delivery-queue gromox-http gromox-zcore gromox-midb gromox-imap gromox-pop3 gromox-event gromox-timer grommunio-admin-api php-fpm nginxsystemctl stop mariadbtar --xattrs --acls -xzf gromox-varlib.tar.gz -C /var/libtar --xattrs --acls -xzf grommunio-etc.tar.gz -C /systemctl start mariadbmysql < grommunio-mysql-all.sqlsystemctl start redis@grommunio php-fpm nginx grommunio-admin-api gromox-event gromox-timer gromox-midb gromox-zcore gromox-http gromox-imap gromox-pop3 gromox-delivery-queue gromox-delivery postfix
Hinweis zu Rechten und Eigentümern: Auf der grommunio Appliance sind die relevanten Systembenutzer und Gruppen normalerweise durch das Image bereits konsistent vorhanden. Wenn Backup und Restore jedoch zwischen unterschiedlich aufgebauten Systemen erfolgen, können tar-Restores mit --xattrs --acls trotz erhaltener ACLs falsche numerische UID/GID-Zuordnungen sichtbar machen. Nach dem Entpacken sollten deshalb Eigentümer, Gruppen, ACLs und zentrale Verzeichnisrechte geprüft werden.
getent passwd gromoxgetent group gromoxnamei -l /var/lib/gromoxfind /var/lib/gromox -maxdepth 2 -printf '%u:%g %m %p\n' | head -50
Bildnachweis: Full-DR-Restore auf der Restore-VM
Nach dem Restore zeigt die CLI wieder die Domain restore.test, die Benutzer und beide Testmails. Danach belegen Admin UI und Webmail denselben Zustand visuell.
Nachweis im Admin UI
Nach dem Restore waren die Dienste aktiv und die wiederhergestellten Benutzer im Admin UI sichtbar.
Mailboxinhalt nach Full DR prüfen
Die Quellmailbox enthielt nach dem Full-DR-Restore beide Testmails. Der Nachweis erfolgte per Gromox-Export und zusätzlich über grommunio Web.
zypper install -y binutilsgromox-exm2mt -u druser@restore.test -ar / > druser-after-full-dr.mtstrings druser-after-full-dr.mt | egrep "DR-FULL|DR-SINGLE|DRFULL|SINGLE-B"
Single-Mailbox-Restore in eine andere Mailbox
Für den gezielten Mailbox-Restore wurde ein Splice-Export verwendet. Der erste Rohimport ohne -s brachte Inhalte zurück, erzeugte aber eine verschachtelte Store-Struktur. Für die Anleitung zählt deshalb der geprüfte Weg mit -s.
gromox-exm2mt -u druser@restore.test -ars / > druser-full-mailbox-splice.mtgromox-mt2exm -u restoretarget2@restore.test < druser-full-mailbox-splice.mtsystemctl restart gromox-http gromox-midb gromox-zcore
Bildnachweis: gezielter Single-Mailbox-Restore
Der Splice-Export wurde in restoretarget2@restore.test importiert. Die Zielmailbox enthält danach beide Testmails und eine normale Ordnerstruktur.
Danach waren beide Testmails in der Zielmailbox sichtbar, ohne die Quellmailbox zu verändern.
Ergebniskontrolle / Technische Abnahme
| Prüfbereich | Prüfung | Erwartetes Ergebnis | Status |
|---|---|---|---|
| Version | grommunio 2026.06.1 bestätigen | Die Appliance-Version ist nachvollziehbar belegt | PASS |
| Backup | SQL, Gromox-Daten, Konfiguration und Mailboxexport sichern | Alle Restore-Artefakte liegen vollständig vor | PASS |
| Integrität | SHA256-Prüfsummen auf Host und Restore-VM prüfen | Die Artefakte wurden unverändert übertragen | PASS |
| Full DR | Restore auf separater VM durchführen | Domain, Benutzer, Dienste und Mailboxinhalte sind wiederhergestellt | PASS |
| Single-Mailbox-Restore | Mailboxexport in Zielmailbox importieren | Die Zielmailbox enthält die wiederhergestellten Mails | PASS |
| Web-Nachweis | Admin UI und grommunio Web prüfen | Benutzer und Mails sind visuell nachvollziehbar sichtbar | PASS |
| Secret Handling | Screenshots und öffentliche Inhalte prüfen | Keine produktiven Credentials oder internen Secrets veröffentlicht | PASS |
Version
- Prüfung
- grommunio 2026.06.1 bestätigen
- Erwartetes Ergebnis
- Die Appliance-Version ist nachvollziehbar belegt
- Status
- PASS
Backup
- Prüfung
- SQL, Gromox-Daten, Konfiguration und Mailboxexport sichern
- Erwartetes Ergebnis
- Alle Restore-Artefakte liegen vollständig vor
- Status
- PASS
Integrität
- Prüfung
- SHA256-Prüfsummen auf Host und Restore-VM prüfen
- Erwartetes Ergebnis
- Die Artefakte wurden unverändert übertragen
- Status
- PASS
Full DR
- Prüfung
- Restore auf separater VM durchführen
- Erwartetes Ergebnis
- Domain, Benutzer, Dienste und Mailboxinhalte sind wiederhergestellt
- Status
- PASS
Single-Mailbox-Restore
- Prüfung
- Mailboxexport in Zielmailbox importieren
- Erwartetes Ergebnis
- Die Zielmailbox enthält die wiederhergestellten Mails
- Status
- PASS
Web-Nachweis
- Prüfung
- Admin UI und grommunio Web prüfen
- Erwartetes Ergebnis
- Benutzer und Mails sind visuell nachvollziehbar sichtbar
- Status
- PASS
Secret Handling
- Prüfung
- Screenshots und öffentliche Inhalte prüfen
- Erwartetes Ergebnis
- Keine produktiven Credentials oder internen Secrets veröffentlicht
- Status
- PASS
Betriebshinweise
Der Test zeigt den technischen Restore-Weg im Lab. Für Produktion gehören zusätzlich regelmäßige Restore-Übungen, definierte RPO/RTO-Ziele, getrennte Backup-Ziele, Monitoring, Verschlüsselung, Zugriffsschutz und dokumentierte Verantwortlichkeiten dazu. Hochverfügbarkeit ersetzt kein Backup, weil Replikation auch Fehler und versehentliches Löschen replizieren kann.






