So richten Sie die TrueNAS-Replikation auf einen anderen Server ein: Schritt-für-Schritt-Anleitung
Die Replikation kopiert ZFS-Snapshots eines Datasets von einem TrueNAS-System auf ein anderes. Fällt der Quellserver aus oder werden Daten versehentlich gelöscht, können Sie die Daten aus den replizierten Snapshots wiederherstellen. Die erste Replikation überträgt das gesamte Dataset. Spätere Replikationen sind inkrementell: Sie übertragen nur die Änderungen, die in neueren Snapshots enthalten sind, wodurch sich die übertragene Datenmenge in der Regel verringert.
Diese Anleitung zeigt, wie Sie eine Push-Replikation einrichten: Der Quell-TrueNAS sendet Snapshots nach einem Zeitplan über SSH an einen Ziel-TrueNAS. Die Schritte und Screenshots beziehen sich auf TrueNAS 25.10. In anderen Versionen können sich Menünamen und Feldbezeichnungen unterscheiden.
Voraussetzungen
Sie benötigen:
- zwei Server mit installiertem TrueNAS 25.10;
- eine Netzwerkverbindung zwischen den Servern;
- ein Administratorkonto auf dem Zielserver mit SSH-Zugriff, einem Home-Verzeichnis und sudo-Berechtigungen;
- ausreichend freien Speicherplatz im Ziel-Pool für das replizierte Dataset und seine Snapshots.
In dieser Anleitung gilt:
- Der Quellserver ist das TrueNAS-System, dessen Daten Sie schützen möchten;
- Der Zielserver ist das TrueNAS-System, das die Kopien speichert.
Informationen zur Installation von TrueNAS auf einem dedizierten Server finden Sie unter TrueNAS auf einem dedizierten Server über IP-KVM und Virtual Media installieren.
Die Replikation ersetzt keine Backups. Werden Daten gelöscht oder beschädigt, kopieren der nächste Snapshot und die nächste Replikation auch diesen Zustand. Den früheren Zustand können Sie nur wiederherstellen, solange noch ein älterer Snapshot aufbewahrt wird. Legen Sie die Aufbewahrungsdauer der Snapshots daher entsprechend fest.
Platzieren Sie den Zielserver in einem anderen Rechenzentrum als den Quellserver. Dann betrifft ein einzelner Ausfall an einem Standort nicht beide Kopien.
Zielserver vorbereiten
Alle Schritte in diesem Abschnitt werden in der Weboberfläche des Zielservers durchgeführt.
Dataset für die Kopien erstellen
Wechseln Sie zu Datasets, wählen Sie den Pool aus und klicken Sie auf Add Dataset. Geben Sie unter Name einen Namen ein, zum Beispiel backup. Behalten Sie das Preset Generic bei und klicken Sie auf Save. Das replizierte Dataset wird innerhalb dieses Datasets erstellt. Verwenden Sie ein neues, leeres Dataset. Verwenden Sie kein Dataset, das wichtige Daten oder Snapshots enthält, da die Replikation Snapshots auf dem Ziel gemäß den Aufbewahrungseinstellungen verwalten und löschen kann.

Administratorkonto konfigurieren
Wechseln Sie zu Credentials > Users, wählen Sie das Administratorkonto aus, das Sie für die Replikation verwenden, zum Beispiel truenas_admin, und klicken Sie auf Edit.
Wählen Sie unter Allow Access die Option SSH Access. Wählen Sie anschließend Allow SSH Login with Password (not recommended). Die Anmeldung per Passwort wird nur benötigt, solange TrueNAS die SSH-Verbindung herstellt und den öffentlichen Schlüssel installiert. Sobald die Verbindung funktioniert, können Sie sie wieder deaktivieren.
Prüfen Sie das Feld Home Directory unter Additional Details. Es muss auf ein tatsächlich vorhandenes Verzeichnis verweisen, zum Beispiel /home/truenas_admin. Die Replikation benötigt für dieses Konto ein echtes Home-Verzeichnis, belassen Sie es daher nicht auf /var/empty. Klicken Sie bei Bedarf auf das Bearbeiten-Symbol und legen Sie das Home-Verzeichnis fest.
Klicken Sie unter Sudo Commands auf das Bearbeiten-Symbol und wählen Sie Allow all sudo commands with no password. TrueNAS verwendet sudo ohne Passwort, um die erforderlichen ZFS-Befehle auf dem Zielserver auszuführen. Klicken Sie auf Save.

Die Kontodetails zeigen nun SSH Password Login Enabled und Allowed Sudo Commands (No Password): ALL.

Allow all sudo commands with no password gewährt dem Konto weitreichende administrative Rechte. Verwenden Sie aus Sicherheitsgründen für die Replikation ein eigenes Administratorkonto anstelle Ihres normalen Administratorkontos und deaktivieren Sie die Passwortanmeldung für SSH, sobald die Einrichtung abgeschlossen ist.
SSH-Dienst aktivieren
Wechseln Sie zu System > Services, suchen Sie SSH und klicken Sie auf das Bearbeiten-Symbol. Stellen Sie sicher, dass Allow Password Authentication ausgewählt ist, und klicken Sie auf Save.

Klicken Sie anschließend neben dem SSH-Status auf die Start-Schaltfläche und aktivieren Sie den Schalter Start Automatically, damit der Dienst nach einem Neustart automatisch startet. Der Status wechselt zu Running.

Nachdem die Replikation erfolgreich ausgeführt wurde, können Sie die Passwortanmeldung für SSH sowohl in den Kontoeinstellungen als auch im SSH-Dienst deaktivieren, sofern keine anderen Verbindungen sie benötigen. Die Replikation verwendet den SSH-Schlüssel.
Quellserver vorbereiten
Die übrigen Schritte werden in der Weboberfläche des Quellservers durchgeführt.
Dataset zur Replikation erstellen
Stellen Sie sicher, dass auch für das Administratorkonto auf dem Quellserver ein Home-Verzeichnis festgelegt ist: Wechseln Sie zu Credentials > Users, wählen Sie das Konto aus und prüfen Sie das Feld Home Directory.
Befinden sich die zu schützenden Daten noch nicht in einem eigenen Dataset, erstellen Sie eines: Wechseln Sie zu Datasets, wählen Sie den Pool aus, klicken Sie auf Add Dataset, geben Sie einen Namen ein, zum Beispiel data, und klicken Sie auf Save.
SSH-Verbindung erstellen
Wechseln Sie zu Credentials > Backup Credentials und klicken Sie im Widget SSH Connections auf Add. Füllen Sie das Formular aus:
- Connection Name: ein beliebiger Name, zum Beispiel backup-server;
- Setup Method: Semi-automatic (TrueNAS only);
- TrueNAS URL: die Adresse des Zielservers, zum Beispiel https: //203.0.113.20;
- Admin Username und Admin Password: die Zugangsdaten des Administratorkontos auf dem Zielserver;
- Username: dasselbe Konto;
- Enable passwordless sudo for zfs commands: ausgewählt;
- Private Key: Generate New.

Klicken Sie auf Save. Verwendet der Zielserver das standardmäßige selbstsignierte Zertifikat, zeigt TrueNAS einen Zertifikatsfehler an und fragt, ob dieser ignoriert werden soll. Wählen Sie Confirm und klicken Sie auf Continue.

TrueNAS verbindet sich mit dem Zielserver, erzeugt ein Schlüsselpaar und installiert den öffentlichen Schlüssel dort automatisch. Die neue Verbindung erscheint im Widget SSH Connections, ihr Schlüssel unter SSH Keypairs.

Replikationsaufgabe erstellen
Wechseln Sie zu Data Protection und klicken Sie im Widget Replication Tasks auf Add. Der Replication Task Wizard wird geöffnet.
What and Where
Wählen Sie unter Source Location die Option On this System und unter Destination Location die Option On a Different System.
Wählen Sie unter SSH Connection die zuvor erstellte Verbindung aus. TrueNAS fragt, ob für ZFS-Befehle sudo verwendet werden soll, da die Verbindung ein Nicht-Root-Konto nutzt. Klicken Sie auf Use Sudo For ZFS Commands.

Erweitern Sie unter Source den Eintrag /mnt und den Pool und wählen Sie das Dataset aus, das Sie replizieren möchten. Wählen Sie Recursive, wenn auch die untergeordneten Datasets repliziert werden sollen. Hat das Dataset noch keine Snapshots, zeigt der Assistent an, dass Snapshots automatisch erstellt werden. TrueNAS erstellt für das Dataset eine Aufgabe für periodische Snapshots, die Sie später im Widget Periodic Snapshot Tasks sehen können.
Erweitern Sie unter Destination die Baumstruktur des Zielservers und wählen Sie das Dataset backup aus. Fügen Sie anschließend nach einem Schrägstrich einen Namen für das replizierte Dataset hinzu, zum Beispiel tank/backup/data. TrueNAS erstellt dieses Dataset beim ersten Lauf.
Belassen Sie SSH Transfer Security auf Encryption und stellen Sie sicher, dass Use Sudo For ZFS Commands ausgewählt ist.
Das Feld Task Name wird automatisch ausgefüllt. Sie können den Namen ändern, damit die Aufgabe in der Liste leichter zu erkennen ist. Klicken Sie auf Next.

When
Belassen Sie unter Replication Schedule die Option Run On a Schedule. Wählen Sie unter Schedule, wie oft repliziert werden soll. Standard ist Daily At 00:00 (12:00 AM). Wählen Sie für wichtige Daten, die sich häufig ändern, einen häufigeren Zeitplan.
Legen Sie unter Destination Snapshot Lifetime fest, wie lange Snapshots auf dem Zielserver aufbewahrt werden:
- Same as Source: verwendet die Aufbewahrungsdauer aus der Aufgabe für periodische Snapshots auf dem Quellserver;
- Never Delete: Snapshots werden aufbewahrt, bis Sie sie manuell löschen;
- Custom: Snapshots werden für den von Ihnen festgelegten Zeitraum aufbewahrt, zum Beispiel 2 Wochen.
Werden Snapshots auf dem Ziel länger aufbewahrt als auf der Quelle, stehen zusätzliche Wiederherstellungspunkte zur Verfügung, es wird jedoch mehr Speicherplatz belegt.

Klicken Sie auf Save. Die Aufgabe erscheint im Widget Replication Tasks mit dem Status PENDING.

Replikation ausführen und prüfen
Um die erste Replikation zu starten, ohne den Zeitplan abzuwarten, klicken Sie neben der Aufgabe auf das Drei-Punkte-Menü und wählen Sie Run job. Bestätigen Sie mit Continue.

Der erste Lauf überträgt das gesamte Dataset und kann je nach Datenmenge und Geschwindigkeit der Verbindung zwischen den Servern lange dauern. Spätere Läufe übertragen nur die Änderungen.
Wenn die Aufgabe abgeschlossen ist, wechselt ihr Status zu SUCCESS, und die Spalte Last Snapshot zeigt den Namen des gesendeten Snapshots an. Lautet der Status FAILED, klicken Sie darauf, um das Aufgabenprotokoll mit der Fehlermeldung zu öffnen.

Um das Ergebnis zu prüfen, öffnen Sie die Weboberfläche des Zielservers und wechseln Sie zu Datasets. Wählen Sie das replizierte Dataset aus, zum Beispiel tank/backup/data, und klicken Sie im Widget Data Protection auf View Snapshots. Die Liste zeigt die vom Quellserver empfangenen Snapshots.

Der Assistent erstellt die Aufgabe mit der Einstellung Destination Dataset Read-only Policy auf Set, sodass TrueNAS das Ziel-Dataset nach einer erfolgreichen Replikation schreibgeschützt macht. Dies schützt die Kopie vor Änderungen, die die nächsten Replikationsläufe stören würden.
Daten aus der Kopie wiederherstellen
Um einzelne Dateien wiederherzustellen, klonen Sie den benötigten Snapshot auf dem Zielserver als neues Dataset: Wechseln Sie zu Datasets, wählen Sie das replizierte Dataset aus, klicken Sie auf View Snapshots, erweitern Sie den Snapshot und klicken Sie auf Clone To New Dataset. Kopieren Sie anschließend die benötigten Dateien aus dem Klon.
Um das replizierte Dataset zurückzukopieren, wechseln Sie auf dem Quellserver zu Data Protection, klicken Sie neben der Replikationsaufgabe auf das Drei-Punkte-Menü und wählen Sie Restore. Geben Sie einen Namen für die Wiederherstellungsaufgabe ein und wählen Sie aus, wo die wiederhergestellten Daten auf dem Quellserver abgelegt werden sollen. TrueNAS erstellt eine neue Replikationsaufgabe, die die Daten vom Ziel zurück zur Quelle überträgt. Die Aufgabe hat den Status PENDING. Führen Sie sie aus, um die Wiederherstellung zu starten.

Setzen Sie das replizierte Dataset auf dem Zielserver nur dann auf einen früheren Snapshot zurück (Rollback), wenn es unbedingt nötig ist. Ein Rollback kann neuere Snapshots entfernen und den Snapshot-Verlauf beschädigen, von dem die nächsten Replikationsläufe abhängen.