SOLVED SSH Verbindung & Replikation

balundi

Dabbler
Joined
May 21, 2021
Messages
19
Hallo,
beim Versuch meine Backups mit Replikationen zum Server beim Provider (Serverprofis) zu senden habe/hatte ich bisher etliche Schwierigkeiten, die zumindest bis auf eine restliche Fehlermeldung reduziert werden konnte.

Die Schwierigkeit mit dem Priv- und Public-Keys bestanden schon darin, dass der Provider für eine Schlüsselerstellung nur inkl. Passphrase erlaubt, und umgekehrt die erstellten Keys vom TrueNAS core zwar importiert, diese aber beim Zugriff vom TrueNAS via SSH-Verbindung einfach nicht akzeptiert wurden.
Der automatische Abruf des Public-Keys in TrueNas holte immer den ersten SSH Key der beim Provider hinterlegt war...und somit beim Versuch einer Verbindung gescheitert ist, weil die Passphrase für TrueNas nicht zulässig ist.

Diese Unstimmigkeit habe ich nun gelöst, indem ich alle bisher nur versuchsweise erstellen SSH Keys beim Provider gelöscht habe und dann als erstes id_rsa Paar die Werte vom TrueNAS erzeugten Key-Paar importiert habe. Seither ist die Fehlermeldung beim Versuch eine SSH Verbindung zu starten bezüglich von Authorisierungs-Fehlern behoben.

Jetzt bleibt im Moment nur noch eine Fehlermeldung übrig (beim Versuch den Ordner auf dem Zielsystem zu laden):

sh: zfs: command not found

Starte ich dann die Replikation, beginnt diese und bricht dann nach kurzer Zeit wegen des zfs Fehlers folgendermaßen ab:


Task Status​

Error​

sh: zfs: command not found.

Logs​

[2024/01/28 13:58:54] INFO [Thread-17] [zettarepl.paramiko.replication_task__task_1] Connected (version 2.0, client OpenSSH_8.0)
[2024/01/28 13:58:55] INFO [Thread-17] [zettarepl.paramiko.replication_task__task_1] Authentication (publickey) successful!
[2024/01/28 13:59:01] ERROR [replication_task__task_1] [zettarepl.replication.run] For task 'task_1' unhandled replication error ExecException(127, 'sh: zfs: command not found\n')
Traceback (most recent call last):
File "/usr/local/lib/python3.9/site-packages/zettarepl/replication/run.py", line 181, in run_replication_tasks
retry_stuck_replication(
File "/usr/local/lib/python3.9/site-packages/zettarepl/replication/stuck.py", line 18, in retry_stuck_replication
return func()
File "/usr/local/lib/python3.9/site-packages/zettarepl/replication/run.py", line 182, in
lambda: run_replication_task_part(replication_task, source_dataset, src_context, dst_context,
... 5 more lines ...
return get_properties(shell, dataset, {property: type}, include_source)[property]
File "/usr/local/lib/python3.9/site-packages/zettarepl/transport/zfscli/__init__.py", line 104, in get_properties
return get_properties_recursive(shell, [dataset], properties, include_source)[dataset]
File "/usr/local/lib/python3.9/site-packages/zettarepl/transport/zfscli/__init__.py", line 90, in get_properties_recursive
output = shell.exec(cmd)
File "/usr/local/lib/python3.9/site-packages/zettarepl/transport/interface.py", line 92, in exec
return self.exec_async(args, encoding, stdout).wait(timeout)
File "/usr/local/lib/python3.9/site-packages/zettarepl/transport/base_ssh.py", line 63, in wait
raise ExecException(exitcode, stdout)
zettarepl.transport.interface.ExecException: sh: zfs: command not found


Vielleicht kann mir jemand weiterhelfen, wo ich nun noch etwas verändern muss um die Replikation(en) zu meinen Ordnern beim Provider zu bewerkstelligen, denn dazu reichen meine Kenntnisse leider 'noch' nicht aus.

Vielen Dank im Voraus
Andreas
 

micneu

Patron
Joined
Mar 23, 2019
Messages
474
moin, was ich jetzt in deinen text nicht gefunden habe.
- welche TrueNAS version ist auf dem System von dem du es Probierst zu versenden?
- welches betriebssystem läuft auf dem Zielsystem (Serverprofis)?
- mit welchem benutzer hast du versucht die replication zu starten?
- bitte mal testen und ergebnis ausgeben (in code block):
Code:
which zfs
 

balundi

Dabbler
Joined
May 21, 2021
Messages
19
moin,

-mein TueNAS 13.0-U6.1
-Betriebssystem bei Serverprofis ist Linux Kernel-Version: 4.18.0-513.9.1.lve.el8.x86_64
-als SSH Benutzer gilt ein eigener Hauptbenutzername den ich in TrueNAS auch angelegt habe und als Anmeldename für die Replikation auch benutze. Der Remotehostschlüssel wird in der SSH Verbindung im TrueNAS mit diesem Benutzernamen auch ordnungsgemäß mit dem Button DISCOVER REMOTE HOST KEY geladen
 

micneu

Patron
Joined
Mar 23, 2019
Messages
474
Ok, der Benutzer den du dafür einsetzt hat genug rechte um das machen zu dürfen?
- siehe "Replication Tasks" in der Offiziellen Dokumentation

Leider hattest du vergessen die ausgabe von:
Code:
which zfs
 

balundi

Dabbler
Joined
May 21, 2021
Messages
19
...der Benutzer hat alle Rechte erhalten
...die zfs Version ist: zfs-2.1.14-1 zfs-kmod-v2023120100-zfs_f4871096b

Nun hat mich heute folgende Antwort vom Serviceteam des Providers erreicht:

Hallo,

Die Fehlermeldung ist:
zettarepl.transport.interface.ExecException: sh: zfs: command not found
zfs steht bei uns nicht zur Verfügung.
Für Rückfragen stehe ich Ihnen gerne zur Verfügung.


D.h. mit anderen Worten ich kann die Replikation im Moment z.B. nur auf mein TrueNAS Scale System aktivieren?

Oder gibt es auch noch eine andere Möglichkeit, denn bei dem Thema bin ich leider noch zu wenig bewandert.

Vielen Dank für jeden Hinweis und Hilfestellung
Andreas
 

Patrick M. Hausen

Hall of Famer
Joined
Nov 25, 2013
Messages
7,776
Du brauchst als Zielsystem eines mit ZFS. Alternativ gibt es rsync-Tasks, um auf Dateiebene zu kopieren. Dabei verliert man aber natürlich Information wie z.B. ACLs oder die Dataset-Struktur. Eine ZFS-Replikation repliziert alles.
 

micneu

Patron
Joined
Mar 23, 2019
Messages
474
@balundi sowas hatte ich mir schon gedacht. deshalb hatte ich ja gefragt das du mal die ausgabe von
Code:
which zfs

postest.
 

balundi

Dabbler
Joined
May 21, 2021
Messages
19
Ja, ganz lieben Dank Patrick....das hatte ich so als Neuling für Replikationen gar nicht bedacht....wird mir aber jetzt auch klar.
Da es mir primär um das outsourcen der Snapshots geht, ist eine LOCAL Übertragung so wie ich es jetzt verstehe auch möglich (mit unterschiedlichen Platten), die man dementsprechend für die Replikation einhängt.

Für die reine Einzel-Datei-Sicherung habe ich mich mit Asigra vor 1-2 Wochen befasst und das funktioniert soweit recht gut.... ist für den Privat-Bereich mit bis zu 10 freien PCs beim TrueNAS core absolut ausreichend.

Mit dem Provider sollte dann ja rsync funktionieren..... irgendwie habe/hätte ich dann zumindest das Thema 'Backup' in 3 Varianten endlich einmal praktisch durchgearbeitet.
 
Top