zwei Raspberry verbinden?

Moderatoren: seppy, udo1toni

Antworten
Benutzeravatar
Steinspiel
Beiträge: 394
Registriert: 28. Dez 2019 08:49
Answers: 2

zwei Raspberry verbinden?

Beitrag von Steinspiel »

Moin,

Ich habe zwei Raspberry: pi1 und pi2. Auf pi1 läuft raspiBackup und sichert auf eine angehängte USB Festplatte.
Nun will ich raspiBackup auch auf pi2 installieren und die Sicherung soll dort auch auf die USB Platte des pi1 erfolgen.

Bild

Per SSH kann ich mittels

Code: Alles auswählen

ssh pi1@192.168.178.100
bzw.

Code: Alles auswählen

ssh pi2@192.168.178.200
und nach eingabe des PWD mich auf den jeweils anderen Raspberry einloggen und dort bewegen. Also das klappt schon mal.

Wie nun aber kann ich ein Verzeichniss von pi1 in pi2 mounten?
Irgendwo habe ich den Befehlt

Code: Alles auswählen

sudo mount -o username=pi1,password=1234 //192.168.178.100/test1 /test2
gefunden um von pi2 aus, das Verzeichniss "test1" auf pi1 in "test2" auf pi2 zu mounten.

Angepasst funktioniert das gut mit einem freigegebenen Verzeichniss eines Win PC aber nicht von Raspbian zu Raspbian. Muss ich erst explizit ein Verzeichnis freigeben, ähnlich wie unter Windows?

Hat jemand einen Tip für mich der sich auch als Linux Laie halbwegs verstehen lässt ? ;-)

Danke und nen schönen Abend noch,
bis dann, Steinspiel

Benutzeravatar
udo1toni
Beiträge: 13864
Registriert: 11. Apr 2018 18:05
Answers: 222
Wohnort: Darmstadt

Re: zwei Raspberry verbinden?

Beitrag von udo1toni »

Dazu muss der nfs kernel-server auf pi1 installiert sein. Außerdem muss das Verzeichnis als nfs Freigabe eingerichtet sein.

Ich möchte Dir allerdings eine Alternative vorschlagen, und zwar rsnapshot.

rsnapshot legt zyklisch Snapshots an. Dazu verwendet es die Software rsync. Der Witz daran: Die Snapshots verwenden Hardlinks, um die Daten anzulegen. Wenn rsnapshot seine Arbeit erledigt, bekommst Du eine Ordnerstruktur, die ungefähr so aussieht:

Code: Alles auswählen

/media/backups/
    alpha.0
        rechner1
            verzeichnis_a
                datei1neu
                datei2alt
            verzeichnis_b
        rechner2
            verzeichnis_c
            verzeichnis_d
    alpha.1
        rechner1
            verzeichnis_a
                datei1alt
                datei2alt
            verzeichnis_b
        rechner2
            verzeichnis_c
            verzeichnis_d
    alpha.2
	...
    alpha.3
	...
    beta.0
	...
    beta.1
	...
    beta.2
	...
    gamma.0
	...
    gamma.1
	...
    gamma.2
	...
    gamma.3
	...
    delta.0
	...
    delta.1
	...
    delta.2
	...
    delta.3
	...
Dabei nimmt im obigen Beispiel nur datei1neu zusätzlichen Platz auf der Platte weg, datei2alt ist ja noch die gleiche Datei wie in alpha.1
alpha, beta, gamma und delta sind zyklisch generiert, wobei rsnapshot automatisch eine einstellbare Menge Backups aufhebt und auch entfernt. gamma.3 wird also gelöscht, aus gamma.2 wird gamma.3 usw, bis gamma.0 frei ist und mit dem aktuellen Backup überschrieben werden kann.

Du erhältst also x "Vollbackups" der letzten Stunden, Tage, Wochen, Monate und musst Dir keinen Kopf machen, in welchem der verschiedenen Verzeichnisse Du Dir die Dateien zusammensuchen musst.

Und speziell in Deinem Fall: rsnapshot kann Backups von entfernten Rechnern pullen. Das heißt, Du musst lediglich auf allen Systemen rsync als Daemon laufen lassen und entsprechende Einträge in der Konfiguration vornehmen, dann zieht sich das System die Backups von den beteiligten Rechnern vollautomatisch.
Pull hat den Vorteil, dass ein Angreifer, der Pi2 kompromittiert hat, keine Chance hat, das Backup auf Pi1 zu zerstören, denn er hat ja keinen Zugriff. Und selbst wenn das Backup gezogen wird, überschreibt es die alten Versionen erst mal nicht.
rsync überträgt nur die Daten, welche auch übertragen werden müssen, es verwendet dabei zusätzlich noch Kompressionstechniken. Ein Initialbackup dauert deshalb vielleicht drei Stunden, anschließend laufen die Backups aber meist in weniger als einer Minute durch, vielleicht vereinzelt in zwei Minuten.

Es gibt übrigens sogar einen rsyncd für Windows... ;)
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

Benutzeravatar
Steinspiel
Beiträge: 394
Registriert: 28. Dez 2019 08:49
Answers: 2

Re: zwei Raspberry verbinden?

Beitrag von Steinspiel »

Moin,
udo1toni hat geschrieben: 30. Jan 2022 21:00 Dazu muss der nfs kernel-server auf pi1 installiert sein. Außerdem muss das Verzeichnis als nfs Freigabe eingerichtet sein.
NFS war schon mal ein gutes Stichwort. Kannte ich natürlich nicht und habe erst mal drüber gelesen...
Scheint ja was mächtiges zu sein!
Ich möchte Dir allerdings eine Alternative vorschlagen,
[...]
Dazu verwendet es die Software rsync
Die kenne ich, oder weiß inzwischen zumindest was es ist, denn raspiBackup verwendet diese auch.
rsnapshot kann Backups von entfernten Rechnern pullen
Wenn ich das richtig verstanden habe: rsnapshot wird auf beiden Raspi installiert, braucht keine "richtige" NW Freigabe und kann trotzdem Backups von beiden Rechnern machen?

Danke für Deine Tips!
bis dann, Steinspiel

Benutzeravatar
udo1toni
Beiträge: 13864
Registriert: 11. Apr 2018 18:05
Answers: 222
Wohnort: Darmstadt

Re: zwei Raspberry verbinden?

Beitrag von udo1toni »

Genau. rsnapshot ist ein Script, welches rsync verwendet. rsync transportiert gewöhnlich die Daten über scp. (secure copy), wenn ich mich richtig erinnere... ist schon etwas her, dass ich das genutzt habe...
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

Antworten