Updating or Restoring the TDPS

Updating or Restoring the TDPS

Postby Kenneth » 23 Dec 2015, 12:54

Updating and restoring the server are the same procedure. The following information below is helpful for updating or restoring the TDPS.
Top: English
Unten: Deutsch


Backup and Restoration

All you need to reconstruct your TeamDrive Personal Server, in the case of, for example, a total failure of your hard disk, is the repository and the configuration file.
For this reason it is essential to regularly backup these two components.
We also recommend backing up these components before performing an update.
The administrator is responsible for the security of TeamDrive Space data stored on a Teamdrive Personal Server.
In the following section we will discuss backup and restoration procedures for the repository data directory.

Backing Up the TeamDrive Personal Server
The simplest way to make a backup is to shutdown the TeamDrive Personal Server and make a complete copy of the repository data directory (referenced by the "repository-data" system parameter).
You may also wish to make backups of the configuration file ("tdps.config") and "mime.types" if you have modified this file.
Of course, instead of a complete copy, "rsync" can be used to update an existing backup.


Online Backup

If your availability requirements do not allow the server to be shutdown, an online backup can be performed.
The procedure for creating an online backup is as follows:

 For each Space (numbered directories) in the repository data directory, do the following:
 Backup the log files in the protolog sub-directory as follows:
 Lock the file called "last.log", if it exists (additional software required).
 Scan the directory and determine the highest numbered log file.
 Backup the "last.log" file.
 Unlock the "last.log" file (additional software required).
 Backup all numbered log files with a number equal to or less than the highest number found in the previous step.
 Backup all files in the data sub-directory.
 Backup all remaining files in the repository data directory.


Restoring the TeamDrive Personal Server

A restore can only be done offline.
Even if only part of the space repository is restored, TeamDrive Personal Server will run the recovery procedure for the entire repository.
This is not an issue because the clients can recognize if a Space has not changed after the restoration process and will continue to use the Space as it did before.

Follow this procedure to restore the repository data directory:
 Shutdown the TeamDrive Personal Server.
 Replace the repository data directory with your backup.
 As mentioned above, you may also restore Space directories selectively.
 Start the TeamDrive Personal Server with the --restored option.

This can be done through the "Command Prompt" or "Terminal".
The TeamDrive Personal Server will recover all Spaces in the repository before it allows any client connections.

As an alternative to the --restored option, creating an empty file (a file with no extension) in the repository data directory called "restored" will have the same effect.
The path to the data directory (repository) can be found in the file "tdps.config".
If the TeamDrive Personal Server is stopped during the recovery process it will automatically resume the recovery process when it starts again.
After the recovery, a file called "restore-state" will be created.
The "restore-state" file contains the information relevant to the restore procedure.

If recovery is in progress, and you would like for the TeamDrive Personal Server to start the recovery again from the beginning (for example, because you have restored different data), then remove this file and start the TeamDrive Personal Server with the --restored option again.
During recovery, the TeamDrive Personal Server scans each space and determines the current log offset.
It writes this information to a file called "restore-state" in the Space.
It also increments the global "restore-id".
The "restore-id" is the time of the restore in seconds from 01-01-2010.

TeamDrive Client Space Recovery

TeamDrive client Space recovery occurs automatically if necessary.
The TeamDrive client software checks the restore state of a Space if the client's local "restore-id" of a Space is not equal to that of the global "restore-id" on the server.
If the client's log offset is beyond the server side offset (after the restore), the client will begin local recovery of the Space.
The client recovers a Space by resetting the local copy of the space to the state of the Space at the time of the restore (as it was on the server).
Before this is done, a backup copy of the local space data is made.
The user is then responsible to check if there are any local changes to the Space in the backup, but not in the Space.
The user should then apply these changes to the Space, for example, by copying over the changed files.
Some coordination with other users of the Space may be required to prevent duplicating this procedure.


Sicherung und Wiederherstellung

Alles was Sie generell zur vollständigen Wiederherstellung eines TeamDrive Personal Servers brauchen, sind das Datenverzeichnis/Repository (data) und die Konfigurationsdatei „tdps.config“.
Daher ist es wichtig diese beiden Komponenten zu sichern.
Wir empfehlen auch, Ihre Daten zu sichern, bevor Sie eine Aktualisierung des Servers durchführen.
Die Daten befinden sich in dem in der Konfiguration als Datenverzeichnis (Repository) angegebenen Pfad.
Der Administrator ist verantwortlich für die Sicherheit der Space-Daten, die auf dem TeamDrive Personal Server gespeichert werden.
Im Folgenden beschreiben wir Verfahren zur Durchführung von Sicherung und Wiederherstellung für das Datenverzeichnis (Repository).

Sicherung
Die einfachste Möglichkeit, eine Sicherung zu erstellen, ist, den TeamDrive Personal Server herunterzufahren und eine vollständige Kopie des Datenverzeichnisses (durch den Konfigurationsparameter repository-data festgelegt) anzulegen.
Darüber hinaus ist es empfehlenswert, die Konfigurationsdatei „tdps.config“ sowie die Datei „mime.types“ zu sichern, sofern Sie diese Datei geändert haben.
Natürlich können zur Sicherung statt einer vollständigen manuellen Kopie externe Programme wie „rsync“ verwendet werden, um eine bestehende Sicherung zu aktualisieren.


Online-Sicherung

Wenn Ihre Anforderungen an die Verfügbarkeit es nicht erlauben den Server herunterzufahren, können Sie eine Online-Sicherung auf folgendem Weg durchführen:

 Der folgende Vorgang muss für jeden einzelnen Space (Ordner mit fortlaufender Nummer) im Datenverzeichnis (Repository) durchgeführt werden:
 Erstellen Sie eine Sicherung der Log-Dateien im „protolog“-Unterverzeichnis im jeweiligen Space-Ordner gemacht werden:
 Setzen Sie ein exklusives Lock auf die Datei „last.log“, sofern diese existiert (hierfür benötigen Sie Software, die nicht im Lieferumfang enthalten ist).
 Durchsuchen Sie das Verzeichnis und bestimmen Sie die Log-Datei mit der höchsten Nummer.
 Sichern Sie die Datei „last.log“.
 Heben Sie den exklusiven Lock auf die Datei „last.log“ auf (hierfür benötigen Sie Software, die nicht im Lieferumfang enthalten ist).
 Sichern Sie alle nummerierten Log-Dateien, die eine Nummer kleiner/gleich der von Ihnen bestimmten höchsten Nummer aus dem vorigen Schritt haben.
 Sichern Sie alle Dateien im Unterverzeichnis von „data“.
 Sichern Sie alle weiteren Dateien im Datenverzeichnis (Repository).

Wiederherstellung

Eine Wiederherstellung der Sicherung kann nur offline durchgeführt werden.
Selbst wenn nur ein Teil des Datenbestandes wiederhergestellt wird, wird der Server das Wiederherstellungsverfahren für das gesamte Datenverzeichnis durchführen.
Dies ist kein Problem, weil die Clients erkennen können, dass sich ein Space nach der Wiederherstellung nicht verändert hat und die Synchronisation in diesem Space normal fortsetzen.

Führen Sie das Verfahren zur Wiederherstellung des Datenverzeichnisses (Repository) wie folgt durch:
 Beenden Sie den Server.
 Ersetzen Sie das Datenverzeichnis durch das entsprechende Verzeichnis der Sicherung.
 Wie oben beschrieben können Sie auch selektiv einzelne Space-Verzeichnisse (Ordner mit fortlaufender Nummerierung im Datenverzeichnis) wiederherstellen.
 Starten Sie den Server mit dem Programmargument „--restored“. Der Server wird alle Spaces des Datenverzeichnisses wiederherstellen bevor Verbindungen der Clients angenommen werden.

Als Alternative zum Start mit dem Programmargument „--restored“ kann eine Datei mit dem Namen „restored“ im Datenverzeichnis vor dem Start des Servers angelegt werden.
Den Pfad zum Datenverzeichnis (Repository) finden Sie in der Datei „tdps.config“.
Wenn der Server bei der Wiederherstellung angehalten wird, wird der Vorgang automatisch beim nächsten Start fortgesetzt.
Die Datei „restore-state“ enthält alle relevanten Informationen zum aktuellen Wiederherstellungsvorgang.
Sollten Sie während des laufenden Wiederherstellungsvorgangs diesen abbrechen und von neuem starten wollen, beispielsweise weil Sie feststellen, dass Sie eine falsche Sicherung wiederherstellen, entfernen Sie die Datei „restore-state“ und starten den Server mit dem „-restored“ Programmargument wie oben beschrieben erneut.

Während der Wiederherstellung durchsucht der Server jeden Space und ermittelt den aktuellen Log-Offset.
Informationen hierzu werden in der Datei „r-state“ im Space-Verzeichnis hinterlegt.
Des Weiteren wird die globale Restore-ID inkrementiert.
Diese Restore-ID entspricht dem Zeitpunkt der Wiederherstellung dargestellt als Sekunden seit dem 01.01.2010.



TeamDrive Client Space-Wiederherstellung

Die Wiederherstellung der Spaces im Client erfolgt automatisch, falls dies nötig ist.
Die Client-Software kontrolliert den Zustand der Wiederherstellung eines Spaces, wenn die lokale Restore-ID eines Spaces im Client ungleich der globalen Restore-ID auf dem Server ist.
Wenn der Log-Offset im Client über dem Log-Offset des Servers (nach Abschluss der Wiederherstellung) liegt, beginnt der Client lokal mit der Wiederherstellung des entsprechenden Spaces.

Der Client stellt einen Space durch Zurücksetzen des Spaces auf den entsprechenden Synchronisationsstand des Spaces zum Zeitpunkt der Wiederherstellung her (wie auf dem Server vorhanden).
Bevor dieser Vorgang angestoßen wird, wird eine Sicherungskopie des lokalen Datenbestandes (Dateisystem) des Space erstellt.

Der Benutzer selbst ist in der Verantwortung zu überprüfen, ob lokale Änderungen zwischen der wiederhergestellten Sicherung des Spaces und der Sicherungskopie des lokalen Datenbestandes (Dateisystem) bestehen.
Kenneth
 
Posts: 908
Joined: 29 Aug 2012, 15:11

Return to TeamDrive Personal Server

Who is online

Users browsing this forum: No registered users and 1 guest