ASE Backup de

From Open-Xchange

OX ASE - Backup & Wiederherstellung des Systems

Open-Xchange carefully listened to customers and partners and brought additional functionality to you by extending OX AE to OX ASE. We learned that most of our customers look for more flexibility to backup and restore their mission-critical e-mail and groupware server using professional backup software and methods. Hence, we provide you with comprehensive documentation that explains you the pros and cons of different backup strategies. These documentation comprises instructions how to create simple snapshots of the Open-Xchange Server using command line tools as well as strategies to realize full backup of groupware, operating system and file system – which is a MUST for all organizations that depend on ongoing email and groupware services as it provides them with additional security.

Backup eines OX ASE-Systems

UCS, das von OX ASE als Basis verwendet wird, folgt dem Filesystem Hierarchy Standard, einer Richtli- nie, die die Aufteilung der Daten in der Unix-Dateisystemhierarchie beschreibt. Dies erlaubt eine effiziente Trennung zwischen lokal erzeugten Dateien und Daten, die im Rahmen der Installation erstellt werden.

Sicherung der LDAP-Daten

Auf einem OXASE-System in der Single Server-Variante ist die Sicherung des LDAP-Datenbestands erforderlich. In der Multi Server-Variante muss die Sicherung des LDAP-Datenbestands nur auf dem Domänencontroller Master erfolgen.

Mit dem folgenden Befehl werden die LDAP-Daten in eine Text-Datei gesichert:

slapcat > LDAP-Daten.ldif

Sicherung der lokalen Konfigurationsdateien

Die lokalen Konfigurationsdateien werden auf OX ASE-Systemen unterhalb des Verzeichnisses "/etc" gespeichert. In einer Standardinstallation ohne weitere Anpassungen des Administrators werden alle Konfigurationsdateien durch Univention Configuration Registry-Templates abgebildet. Wenn keine lokalen Anpassungen an Konfigurationsdateien oder Templates vorgenommen wurden, reicht es aus, für eine minimale Sicherung die Dateien

/etc/univention/base.conf, /etc/univention/base-forced.conf; /etc/univention/base-schedule.conf 

zu sichern.

Wenn Anpassungen an Konfigurationsdateien oder Templates vorgenommen wurden, muss das komplette "/etc"-Verzeichnis gesichert werden. Das Verzeichnis /etc umfasst in aller Regel weniger als 50 MB Daten und sollte daher nach Möglichkeit immer komplett gesichert werden.

Sicherung der Benutzerdaten

Das Heimatverzeichnis des root-Benutzers wird lokal auf jedem System im Verzeichnis /root vorgehalten. Es sollte in das Backup aufgenommen werden. Wenn die Heimatverzeichnisse der weiteren Benutzer nicht auf einer Freigabe sondern lokal gespeichert werden, muss auch das "/home"-Verzeichnis in die Sicherung aufgenommen werden.

Sicherung der installierten Pakete

Die auf dem System installierten Pakete können mit dem Befehl

dpkg --get-selections > paketliste.txt

gesichert werden.

Sicherung der Laufzeitdaten

Die Laufzeitdaten von System-Programmen (z.B. der Mailspool des Cyrus-IMAPD) und die Logdateien werden unterhalb von /var gespeichert. Auch wenn hier einzelne Daten nicht notwendigerweise gesichert werden müssten ("/var/cache" und "/var/run" enthalten beispielsweise Daten, die nur für die Laufzeit eines Systems bis zum Reboot relevant sind), ist es trotzdem empfehlenswert, das komplette /var-Verzeichnis zu sichern. Außerdem sollte das "/srv"-Verzeichnis gesichert werden. Es ist zu beachten, dass einige Applikationen eventuell eine gesonderte Sicherung benötigen.

Sicherung von Software, die nicht im UCS-Standard-Umfang enthalten ist

Wenn Software installiert wurde, die nicht im UCS-Standardpaketumfang enthalten ist, müssen zwei Fälle unterschieden werden:

1. Bei Software, die auch im DEB-Format vorliegt, reicht es diese Pakete in die Sicherung aufzu- nehmen. 2. Externe Software, die nicht im DEB-Format vorliegt, wird in der Regel nach "/opt" oder "/usr/local" installiert. Diese Verzeichnisse müssen dann ebenfalls gesichert werden.

Sicherung der Laufzeitdaten von Open-Xchange

Die Konfiguration von Open-Xchange wird in dem Verzeichnis "/opt/open-xchange" vorgehalten. Es sollte vollständig in das Backup mitaufgenommen werden. Benutzerdaten werden von OX ASE sowohl in einer MySQL-Datenbank als auch in den registrierten Filestores (als normale Dateien im Dateisystem) vorgehalten.

Es ist wichtig, dass Filestore und Datenbank zum gleichen Zeitpunkt gesichert werden, da Metada- ten über die im Filestore gespeicherten Dateien in der Datenbank vorgehalten werden.

OX ASE speichert den Filestore in der Standardeinstellung im Verzeichnis "/var/oxfilestore". Sofern bereits das gesamte /var-Verzeichnis gesichert wurde, sind die benötigen Dateien dadurch schon abgedeckt. Falls weitere Filestores außerhalb von /var eingerichtet wur- den, sind diese ebenfalls zu sichern. Eine Liste aller Filestores kann über den Befehl

/opt/open-xchange/sbin/listfilestore 

ermittelt werden.

Die von Open-Xchange verwendete MySQL-Datenbank kann über die MySQL-Standardtools gesichert werden. Zum Erstellen eines Datenbank-Dumps wird der folgende Befehl empfohlen:

mysqldump --all-databases --single-transaction > datenbank-sicherung.mysql

Wiederherstellung eines OX ASE-Systems

Die folgende Anleitung führt das generelle Vorgehen bei der Wiederherstellung eines OX ASE-Systems auf. Die Wiederherstellung erfordert Erfahrung im Umgang mit UCS und OX ASE und sollte nach Möglichkeit in einer Testumgebung vor Eintreten des “Ernstfalls” simuliert werden.

Die folgenden Schritte sollten in der angegebenen Reihenfolge durchgeführt werden. Nach Abschluss aller Schritte sollte das System neu gestartet werden, um alle Dienste sauber zu initialisieren.

Neuinstallation des Systems und Abgleich des Softwarebestandes

Das wiederherzustellende System sollte neu installiert werden. Das System, auf dem die LDAP- Daten zurückgespielt werden, muss mit den gleichen Basis-Einstellungen (Rechner- und Domänen- name, Name der LDAP-Basis) installiert werden wie das alte System.

Die Installationsparameter können anhand der Datei "/etc/univention/installation_profile" gesetzt werden. Es ist aber zu beachten, dass diese Datei bei der initialen Installation erzeugt wurde und sich einige Parameter oder Paketnamen geändert haben können.

Wiederherstellung der lokalen Konfigurationsdateien

Die "/etc/univention/base.conf*"- Dateien sowie "/etc/ldap.secret" und "/etc/machine.secret" sollten zurückgespielt werden. Wurde das komplette "/etc"-Verzeichnis gesichert, sollte das komplette "/etc"-Verzeichnis auf das neue System zurückkopiert werden.

Anschließend sollte als Benutzer root der Befehl

ucr commit 

aufgerufen werden. Es löst einen kompletten Rebuild aller über Univention Configuration Registry-Templates generierten Dateien aus.

Stoppen der Serverdienste

Alle Server-Dienste auf dem System sollten durch den Aufruf von

/etc/init.d/DIENST stop

angehalten werden. Um automatische Starts während der folgenden Schritte zu verhindern, ist es sinnvoll über die autostart-Einstellungen der Dienste einen Start zu verhindern, z.B.

ucr set cups/autostart=no

Wiederherstellung des Software-Paketbestands

Die vorher installierten UCS-Pakete sollten anhand der gesicherten Paketliste wieder installiert werden. Dazu muss im ersten Schritt die gesicherte Paketliste wieder eingespielt werden:

dpkg --set-selections < liste.txt

Anschließend kann mit "apt-get" der Paketbestand wieder hergestellt werden (dazu müssen die Repository-Einstellungen wie auf dem alten System gesetzt sein):

apt-get -u dselect-upgrade

Abschließend sollte die Liste der danach installierten Pakete (ermittelbar mit dem Befehl "dpkg --list") abgeglichen werden und ggf. fehlende Pakete mit dem Befehl

univention-install nachinstalliert werden.

Wenn Nicht-UCS-Software installiert war, muss diese sowie ggf. deren Datenbestand ebenfalls zurückgespielt werden.

Wiederherstellung der Laufzeitdaten

Das "/var"-Verzeichnis muss zurückkopiert werden. Das Verzeichnis "/var/run" sollte dabei übersprungen werden.

Wiederherstellen der LDAP-Daten/Listener-Notifier-Replikation

Für das Zurückspielen der LDAP-Daten sind mehrere Schritte notwendig.

Die bei der Installation des System erzeugten initialen LDAP-Daten müssen zunächst entfernt werden. Dazu müssen im Verzeichnis "/var/lib/univention-ldap/ldap/" alle Dateien mit Ausnahme der Datei "DB_CONFIG" entfernt oder verschoben werden. Anschließend können die Daten aus dem LDIF wieder eingespielt werden:

mv /var/lib/univention-ldap/ldap /var/lib/univention-ldap/ldap.old 
mkdir /var/lib/univention-ldap/ldap 
ucr commit /var/lib/univention-ldap/ldap/DB_CONFIG 
slapadd -l LDAP-Daten.ldif

Außerdem sollte der Univention Directory Listener zurückgesetzt werden:

rm -rf /var/lib/univention-directory-listener 
mkdir -p /var/lib/univention-directory-listener/ 
chown listener /var/lib/univention-directory-listener/

Anschließend sollten die betroffenen Dienste neu gestartet werden:

/etc/init.d/slapd start 
/etc/init.d/univention-directory-notifier start 
/etc/init.d/univention-directory-listener start

Die Neuinitialisierung des Univention Directory Listener kann je nach Menge der im LDAP-Verzeichnis gespeicherten Daten einige Zeit in Anspruch nehmen. In dieser Zeit sollte das System nicht neu gestartet werden.

Zurückspielen der Laufzeitdaten von Open-Xchange

Es wird empfohlen, dass alle Daten unterhalb des Filestore-Basisverzeichnisses (i.d.R. "/var/oxfilestore") gelöscht werden, bevor das Backup des Filestores zurückgespielt wird.

Um Inkonsistenzen zu vermeiden, wird dringend empfohlen, nur Backups von MySQL-Datenbank und Filestore zurückzuspielen, die zum selben Zeitpunkt erstellt wurden. Nach dem Zurückspielen kann über den folgenden Befehl ein Konsistenzcheck durchgeführt werden:

/opt/open-xchange/sbin/checkconsistency

Zurücksetzen der Autostart-Einstellungen

Die UCR-Autostart-Einstellungen, welche in den vorigen Schritten vorgenommen wurden, sollten zurückgesetzt werden.