Raspberry Pi · 18 min read · Dec 14, 2025

Wie man den Raspberry Pi als Backup-Server für Linux- und Windows-Desktops einrichtet

Der Raspberry Pi ist eine Reihe von kleinen Einplatinencomputern. Sie sind recht günstig und eignen sich gut für den Betrieb eines Backup-Servers oder VoIP-Servers. Im Februar 2015 wurde der Raspberry Pi 2 veröffentlicht. Er hat mehr RAM, eine neuere CPU und verfügt über 4 integrierte USB-Ports.

Der aktuelle Preis für den Raspberry Pi 2 beträgt 35 $. Allerdings benötigen Sie zusätzlich einige andere Dinge:

  • microSD-Karte: Der Raspberry Pi 2 benötigt eine microSD-Karte zum Booten. Jede Karte mit 4 GB oder mehr sollte ausreichen. Für den Backup-Server sollten 4 GB ausreichend sein. Sie sollten eine Karte wählen, die schnell liest.
  • Micro-USB-Netzteil: Außerdem benötigen Sie ein Netzteil dafür. Er wird über einen Micro-USB-Port mit Strom versorgt, sodass Sie wahrscheinlich ein Ladegerät von einem alten Mobiltelefon zu Hause haben, das Sie nicht mehr benötigen.
  • Externer USB-Speicher: Da es in diesem Howto um die Einrichtung eines Backup-Servers geht, müssen Sie auch externen USB-Speicher besorgen. Vielleicht reicht eine externe 512-GB-Festplatte, vielleicht benötigen Sie ein 4-TB-Laufwerk. Das hängt ganz von Ihrem Speicherbedarf ab.
  • Gehäuse: Das letzte ist das Gehäuse. Sie benötigen nicht unbedingt ein Gehäuse, aber wenn Sie keines verwenden, liegt das gesamte Mainboard irgendwo herum und ist anfälliger für Beschädigungen.

Die Gesamtkosten belaufen sich also auf etwa 35 $ für den Raspberry Pi, etwa 10 $ für die microSD-Karte, etwa 10 $ für das Gehäuse, nichts für das Micro-USB-Ladegerät, da Sie wahrscheinlich eines haben, und dann die Kosten für das externe USB-Laufwerk.

Außerdem habe ich Samba eingerichtet, um Backups abzurufen, und der Share ist im Nur-Lesen-Modus ohne erforderliche Anmeldeinformationen. Wenn es gemäß dieser Anleitung richtig konfiguriert ist, wird es nur im LAN verfügbar sein und alle Verbindungsversuche von außerhalb des LANs ablehnen. Die Einrichtung von Samba-Benutzern und verschiedenen Anmeldeinformationen würde den Rahmen dieses Howtos sprengen. Es gibt viele andere Howtos, die dies erklären, und es könnte leicht integriert werden, wenn Bedarf besteht.

Einrichtung des Raspberry Pi als Backup-Server

Die Einrichtung des Raspberry Pi als Backup-Server ist der “schwierigste” Teil, da Sie zuerst ein Image flashen und dann alles vorbereiten müssen. Die Schritt-für-Schritt-Anleitung sollte Sie jedoch durch den Prozess führen.

1. Raspian-Image herunterladen

Laden Sie zuerst das aktuelle Raspian-Image von hier herunter https://www.raspberrypi.org/downloads/

2. Das Image auf die microSD-Karte flashen

Nachdem Sie das Image heruntergeladen haben, müssen Sie es auf die microSD-Karte flashen. Da es bereits hervorragende Anleitungen dafür gibt, macht es keinen Sinn, dies hier zu wiederholen. Am besten folgen Sie der Anleitung hier.

3. Erster Boot / Konfiguration

Nachdem Sie den Raspberry Pi mit dem Raspian-Image geflasht haben, schließen Sie einen HDMI-Bildschirm an und starten Sie ihn. Beim ersten Boot werden Sie mit einem Konfigurationsbildschirm konfrontiert. Dieser Konfigurationsbildschirm ist ziemlich einfach und es gibt ein paar Dinge, die Sie einstellen sollten.

Haftungsausschluss: Die Bilder wurden mit einem Handy aufgenommen, daher sind sie nicht so toll.

4. Dateisystem erweitern

Zuerst möchten wir den gesamten Speicherplatz auf der SD-Karte verfügbar haben. Für die Backups spielt es keine Rolle, da sie sowieso auf einem externen Laufwerk gespeichert werden. Ich möchte jedoch den verfügbaren Speicherplatz haben. Wählen Sie also 1 Dateisystem erweitern und dann werden Sie mit einer Benachrichtigung aufgefordert, dass beim nächsten Neustart das Dateisystem erweitert wird.

5. Benutzerpasswort ändern

Dann möchten wir das Standardpasswort für den Benutzer “pi” ändern. Wählen Sie also 2 Benutzerpasswort ändern und geben Sie Ihr gewünschtes Passwort zweimal ein, jeweils gefolgt von Enter. Auch hier werden Sie mit einer Benachrichtigung aufgefordert, dass das Passwort geändert wurde.

6. Konsolenanmeldung

Anschließend möchten wir sicherstellen, dass wir keine GUI starten. Wählen Sie also 3 Booten zu Desktop/Scratch aktivieren. Wählen Sie auf dem folgenden Bildschirm die Konsolen-Textkonsole, die eine Anmeldung erfordert (Standard).

7. Lokalisierung

Dann möchten wir die Systemsprache und andere verfügbare Sprachen, Tastaturlayout usw. festlegen. Dazu gehen wir zu 4 Internationalisierungsoptionen. Wenn Sie das betreten, werden Sie aufgefordert, die Sprachen, die Zeitzone und die Tastatursprache zu ändern. Die Dialoge sind alle einfach, daher werde ich nicht weiter ins Detail gehen.

Hinweis: Wenn Sie eine dieser Optionen ausgewählt haben, gelangen Sie wieder zum Hauptkonfigurationsbildschirm.

8. Erweiterte Optionen

Gehen Sie nun zu 8. Erweiterte Optionen. Dort haben wir eine weitere Reihe von Einstellungen, die wir vornehmen können. Die drei wichtigen sind A2 Hostname, A3 Speichersplit und A4 SSH.

9. Hostname festlegen

Der Hostname ermöglicht es Ihnen, auf den Raspberry Pi über seinen Hostnamen im LAN zuzugreifen. Achtung: Sie können nur Buchstaben und Zahlen verwenden. In diesem Beispiel verwende ich als Hostname rpi2bu - kurz für Raspberry Pi 2 Backup, aber das liegt ganz bei Ihnen.

10. Speichersplit

Da wir diesen Raspberry Pi als Backup-Server betreiben möchten, wollen wir keinen wertvollen RAM für die GPU verschwenden. Denken Sie daran: Dies ist ein headless Server. Stellen Sie also den RAM-Split auf 16 MB ein.

11. OpenSSH-Server aktivieren

Da wir unsere Backups mit rsync über SSH durchführen und da der SSH-Zugriff gut für die Remote-Verwaltung des Raspberry Pi ist, aktivieren Sie auch den OpenSSH-Server im Menü der erweiterten Optionen.

11. Fertigstellen und Neustarten

Das sind also alle Dinge, die im Konfigurationsbildschirm eingestellt werden müssen, und Sie können jetzt aus der Hauptkonfiguration auswählen. Sobald Sie dies tun, startet der Raspberry Pi neu und nach einer Weile werden Sie nach Ihren Anmeldeinformationen gefragt. Der Benutzer ist derzeit pi und das Passwort ist das, was Sie in Schritt 5 festgelegt haben. Außerdem wird Ihnen die aktuelle IP-Adresse des Raspberry Pi angezeigt.

12. Aktualisieren und erforderliche Pakete installieren

Um den Raspberry Pi als Backup-Server zu haben, müssen wir zwei zusätzliche Pakete installieren: rsync und samba. Rsync ist das Tool, das die Dateien von Ihrem Windows-/Linux-Computer synchronisiert, und Samba macht die Backups dann im Netzwerk verfügbar (im Nur-Lesen-Modus).

Da es immer viele Änderungen und Updates gibt, führen wir zuerst aus:

sudo apt-get update && sudo apt-get upgrade

und dann installieren wir die erforderlichen Pakete mit:

sudo apt-get install rsync samba

Hinweis: Der Standardbenutzer pi kann Systembefehle als Root mit dem Befehl sudo ausführen. Wenn Sie den Befehl sudo verwenden, werden Sie erneut nach Ihrem Anmeldepasswort gefragt. Dieses Passwort wird auch eine Zeit lang zwischengespeichert, sodass das Ausführen von zwei sudo-Befehlen hintereinander nur einmal die Passworteingabe auslösen sollte.

13. Fortfahren mit Remote-SSH-Verbindung oder auf dem Raspberry Pi

Die nächsten Schritte können entweder direkt auf dem Raspberry Pi oder über eine SSH-Verbindung durchgeführt werden. Ich bevorzuge SSH-Verbindungen und benutze unter Linux einfach Konsole in meinem KDE. Unter Windows könnten Sie Putty oder Kitty verwenden.

14. Externes USB-Laufwerk lokalisieren und formatieren

Bevor wir den Samba-Server konfigurieren, müssen wir das externe USB-Laufwerk einhängen und einen Backup-Benutzer erstellen. Bevor wir das externe USB-Laufwerk einhängen können, müssen wir es formatieren und seine UUID kennen. Führen Sie also, bevor Sie Ihr externes USB-Laufwerk anschließen, den folgenden Befehl aus:

ls -al /dev/disk/by-uuid

und es wird etwas zurückgeben wie:

total 0
drwxr-xr-x 2 root root 100 Mai 19 18:22 .
drwxr-xr-x 6 root root 120 Jan  1  1970 ..
lrwxrwxrwx 1 root root  15 Mai 19 18:22 13d368bf-6dbf-4751-8ba1-88bed06bef77 -> ../../mmcblk0p2
lrwxrwxrwx 1 root root  15 Mai 19 18:22 15CD-3B79 -> ../../mmcblk0p1

Jetzt schließen Sie das externe USB-Laufwerk an und führen Sie den Befehl erneut aus. Sie werden sehen, dass das Ergebnis anders ist und es ein neues Gerät gibt.

total 0
drwxr-xr-x 2 root root 100 Mai 19 18:22 .
drwxr-xr-x 6 root root 120 Jan  1  1970 ..
lrwxrwxrwx 1 root root  15 Mai 19 18:22 13d368bf-6dbf-4751-8ba1-88bed06bef77 -> ../../mmcblk0p2
lrwxrwxrwx 1 root root  15 Mai 19 18:22 15CD-3B79 -> ../../mmcblk0p1
lrwxrwxrwx 1 root root  10 Mai 19 18:22 eac53de3-9f06-4e46-999c-684da279298b -> ../../sda1

Das sagt uns zwei Dinge. Das neue Gerät ist /dev/sda1 und seine UUID ist eac53de3-9f06-4e46-999c-684da279298b. Wenn Sie mehrere Laufwerke anschließen, kann sich sda1 ändern. Daher verwenden wir für die späteren Einhängezwecke einfach die UUID, die sich nicht ändert, solange die Partitionen nicht geändert oder die Partition formatiert wird - wir sind jedoch dabei, die Partition in ein geeignetes Dateisystem zu formatieren.

Bevor wir es verwenden können, müssen wir dieses Laufwerk formatieren. Ich bevorzuge ext4, aber einige Leute bevorzugen btrfs wegen seiner Snapshots und Integritätsprüfungen. Um es als ext4 zu formatieren, führen Sie einfach diesen Befehl aus:

sudo mkfs.ext4 /dev/sda1

Warnung: Stellen Sie sicher, dass Sie das richtige Geräteetikett verwenden, da Sie sonst Daten auf einem anderen Gerät zerstören könnten.

Wie gesagt, das Formatieren führt auch dazu, dass die UUID geändert wird, also müssen Sie den oben genannten Befehl erneut ausführen und die neue UUID notieren.

15. Externes USB-Laufwerk einhängen

Das Nächste ist, dass wir es einhängen müssen. Hier müssen Sie entscheiden, wo Sie es einhängen möchten. Ich habe mich entschieden, das Laufwerk im Home-Verzeichnis des Backup-Benutzers ‘bu’ einzuhängen. Ich hätte es auch als /home einhängen können, wenn ich gewollt hätte. Wenn ich jedoch mehrere Backups durchführen möchte, mache ich sie gerne auf einzelnen Laufwerken. Also ein Benutzer = 1 Laufwerk, und das Laufwerk wird im Home-Verzeichnis des Benutzers eingehängt. Am Raspberry Pi können Sie direkt 4 USB-Geräte anschließen, sodass es einfach ist, bei Bedarf auf einen anderen Benutzer zu erweitern. Bevor ich es einhänge, füge ich den entsprechenden Backup-Benutzer hinzu - in diesem Howto nenne ich diesen Benutzer bu. Um diesen Benutzer zu erstellen, führen Sie den folgenden Befehl aus:

sudo adduser bu

Sie werden erneut aufgefordert, zweimal ein Passwort für diesen Benutzer anzugeben.

Sobald der Benutzer hinzugefügt wurde, können Sie das externe Laufwerk ganz einfach mit dem folgenden Befehl dort einhängen:

sudo mount /dev/sda1 /home/bu

Bevor wir es jedoch verwenden können, muss noch ein letzter Schritt unternommen werden. Sie müssen jetzt auch den Besitz des eingehängten Ordners auf den Benutzer bu ändern:

sudo chown bu:bu /home/bu

So, wir haben jetzt das externe USB-Laufwerk eingehängt und die entsprechenden Berechtigungen festgelegt. Wenn Sie jetzt den folgenden Befehl ausführen, sehen Sie, dass /dev/sda1 in /home/bu eingehängt ist:

df -h
Filesystem      Size  Used Avail Use% Mounted on
rootfs           15G  2.4G   12G  18% /
/dev/root        15G  2.4G   12G  18% /
devtmpfs        484M     0  484M   0% /dev
tmpfs            98M  236K   98M   1% /run
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           195M     0  195M   0% /run/shm
/dev/mmcblk0p1   56M   19M   37M  34% /boot
/dev/sda1       2.7T  260M  2.6T   1% /home/bu

Da ich bereits einige Testdaten auf dem externen USB-Laufwerk habe, zeigt es, dass ich bereits 260 MB verwendet habe. Auf einem frischen Laufwerk sollte es null sein.

16. Externes USB-Laufwerk beim Booten einhängen

Alles scheint in Ordnung zu sein, aber nach einem Neustart ist das externe USB-Laufwerk nicht mehr eingehängt. Normalerweise würden Sie einfach einen Eintrag in /etc/fstab hinzufügen, aber es gibt ein Problem mit dem schnellen Booten und der zu langsamen USB-Erkennung. Die Lösung ist ziemlich einfach.

Bearbeiten Sie: /boot/cmdline.txt

und Sie sehen, dass es eine Zeile gibt, die enthält:

dwc_otg.lpm_enable=0 console=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait

Fügen Sie einfach rootdelay=10 hinzu, sodass es jetzt so aussieht:

dwc_otg.lpm_enable=0 console=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait rootdelay=10

Bearbeiten Sie als Nächstes /etc/fstab

und fügen Sie dies ans Ende dieser Datei hinzu:

UUID=eac53de3-9f06-4e46-999c-684da279298b       /home/bu        ext4    defaults        0       2

Natürlich verwenden Sie Ihre eigene UUID anstelle der im obigen Beispiel angegebenen.

Jetzt haben wir sichergestellt, dass die externen USB-Laufwerke in /home/bu auch nach einem Neustart eingehängt werden. Wenn Sie mehr als ein USB-Gerät anschließen, was ich nie getestet habe, und Sie feststellen, dass nicht alle korrekt hinzugefügt werden, dann verlängern Sie möglicherweise rootdelay auf mehr als 10.

17. Samba konfigurieren

Als Nächstes werden wir Samba konfigurieren, damit alle Backups im Netzwerk verfügbar gemacht werden. Samba ist ein Daemon, der Netzwerkteilungen bereitstellt, die auch über Windows mit dem SMB-Protokoll zugegriffen werden können.

Bearbeiten Sie einfach /etc/samba/smb.conf und ersetzen Sie den Inhalt der Konfigurationsdatei durch dies:

[global]

   workgroup = WORKGROUP
   server string = %h server
;   wins support = no
;   wins server = w.x.y.z
   dns proxy = no
;   name resolve order = lmhosts host wins bcast
   name resolve order = bcast lmhosts host wins

    socket options = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE

;   interfaces = 127.0.0.0/8 eth0
;   bind interfaces only = yes

   hosts allow = 127.0.0.1, 10.0.0.0/24
   hosts deny = 0.0.0.0/0

   log file = /var/log/samba/log.%m
   max log size = 1000
#   syslog only = no
   syslog = 0
   panic action = /usr/share/samba/panic-action %d

   security = user
   encrypt passwords = true
   map to guest = bad user
   guest account = bu

#   valid users = root

#======================= Freigabedefinitionen =======================

[Backup]
        comment = Backup Share
        path = /home/bu
        read only = yes
        guest only = yes
        guest ok = yes
        hosts allow = 127.0.0.1, 10.0.0.0/24
        force user = bu
        force group = bu
        hosts deny = 0.0.0.0/0

Um sicherzustellen, dass nichts außerhalb des LANs geleakt wird, habe ich im globalen Abschnitt festgelegt, dass jede IP-Adresse abgelehnt wird und nur localhost sowie das LAN erlaubt sind. Ich verwende 10.0.0.x für mein LAN. Wahrscheinlich verwenden Sie 192.168.0.0, also ändern Sie dies entsprechend.

Außerdem sehen Sie im globalen Abschnitt, dass das Gastkonto der Benutzer bu ist, und in der tatsächlichen Freigabe sehen Sie, dass Gäste Zugriff haben und dass es sich um einen Nur-Lese-Zugriff handelt.

Speichern Sie die Datei und beenden Sie sie, und starten Sie Samba neu:

sudo /etc/init.d/samba restart

Damit sind wir mit der Konfiguration der Dienste fertig.

18. Backup-Steuerdatei auf dem Raspberry Pi

Erstellen und bearbeiten Sie die /home/bu/backups.sh und füllen Sie sie mit folgendem Inhalt:

#!/usr/bin/env bash

basePath="/home/bu"

action="${1}"

function checkMonth ()
{
        now=$(date +"%Y-%m")
        last=$( "checkMonth.txt"
        fi
}


function makeHardlink ()
{
        # Erstellen Sie eine Hardlink-Kopie
        now=$(date +"%Y-%m-%d_%H-%M")
        mkdir -p "${basePath}/old/${now}"
        cp -al "${basePath}/current"* "${basePath}/old/${now}"
}


function checkFree ()
{
        # Überprüfen, ob alte Dateien gelöscht werden müssen
        freeSpace=$( df -P | grep "${basePath}" | awk '{print $4}' )
        curUse=$( cd "${basePath}/current" | du -s | awk '{print $1}' )
        estUse=$(( curUse * 2 ))

        echo "${freeSpace} - ${curUse} - ${estUse}"

        while [[ ${freeSpace} -le ${estUse} ]]
        do
                echo "Nicht genug Speicherplatz... alte Backups werden entfernt..."
                IFS= read -r -d $'\0' line < <(find "${basePath}/old" -type d -maxdepth 1 -printf '%T@ %p\0' 2>/dev/null | sort -z -n)
                oldDir="${line#* }"
                rm -Rf "${oldDir}"
                freeSpace=$( df -P | grep "${basePath}" | awk '{print $4}' )
                echo "${freeSpace} - ${curUse} - ${estUse}"
        done
}


case ${action} in

        newMonth)
                        checkMonth
                        ;;
        hardLink)
                        makeHardlink
                        checkFree
                        ;;
esac

Dieses Skript hat zwei Zwecke. Es sollte vor und nach jedem Backup ausgeführt werden.

Die Funktion checkMonth überprüft, ob seit dem letzten Backup ein neuer Monat vergangen ist. Wie Sie wissen, können Festplatten beschädigt werden oder einige Teile davon können ausfallen. Wenn das passiert, können Sie nicht mehr auf die Daten in den beschädigten Sektoren zugreifen. Ein vollständiges Backup jedes Mal zu erstellen, erfordert jedoch viel Speicherplatz. Um Speicherplatz zu sparen, erstelle ich Hardlinks für Backups, was bedeutet, dass ich nur die Dateisystem-“Index”-Dateien neu schreibe, die auf dieselben Daten verweisen. Wenn der Datensektor beschädigt wird, können die Dateien nicht mehr für alle hardlinked Dateien abgerufen werden, da sie alle auf dieselben Daten verweisen. Um dieses Risiko zu minimieren, stelle ich sicher, dass jeden Monat ein vollständiges neues Backup-Set geschrieben wird. Dies wird Ihren Speicherplatz beanspruchen. Wenn Sie beispielsweise 400 GB Daten haben, bedeutet das, dass im Monat 1 400 GB + geänderte Dateien verwendet werden. Im Monat 2 werden weitere 400 GB + geänderte Dateien verwendet usw.

Das bedeutet auch, dass die erste Synchronisierung und die erste Synchronisierung in einem neuen Monat lange dauern werden. Alle anderen sind schnell.

Die Funktion makeHardlink erstellt tatsächlich die Hardlink-Kopie des letzten Backups. Eine Hardlink-Kopie benötigt fast keinen Speicherplatz, und bei einem Backup werden nur neue Dateien neu geschrieben. Auch in Kombination mit der Hardlink-Kopie führe ich die Funktion checkFree aus.

Die Funktion checkFree überprüft den freien Speicherplatz von /home/bu. Sie überprüft auch die verwendete Größe des letzten Backups. Wenn der freie Speicherplatz weniger als das Doppelte des letzten Backups beträgt, werden alte Backups entfernt, bis wieder das Doppelte des freien Speicherplatzes vorhanden ist. Ich tendiere dazu zu denken, dass, wenn Sie bereits 400 GB Daten haben, die Sie sichern möchten, es unwahrscheinlich ist, dass Sie am nächsten Tag/zur nächsten Backup-Zeit mehr als 800 GB haben.

Zusammen bedeutet dies, dass Sie diesen Backup-Mechanismus “für immer” verwenden können. Es entfernt automatisch alte Backups, wenn der freie Speicherplatz zu klein wird.

Nachdem Sie dieses Skript gespeichert haben, machen Sie es ausführbar und ändern Sie den Besitz auf den Benutzer bu:

sudo chmod 0755 /home/bu/backups.sh  
sudo chown bu:bu /home/bu/backups.sh

Das war’s auf der Seite des Raspberry Pi.

Backups auf den Raspberry Pi von Linux erstellen

Um Backups auf den Raspberry Pi zu erstellen, müssen Sie nur Ihren aktuellen Benutzer (oder root, falls gewünscht) zum Backup-Benutzerkonto des Raspberry Pi hinzufügen.

Ich gehe davon aus, dass Sie bereits einen SSH-Client installiert haben und dass Sie einen öffentlichen Schlüssel haben, den Sie verwenden können. Eventuell müssen Sie zuerst rsync installieren.

19. Erstellen eines öffentlichen SSH-Schlüssels

Wenn Sie bisher keinen öffentlichen Schlüssel haben, erstellen Sie einen:

ssh-keygen -t rsa -b 4096 -C "[email protected]"

Natürlich ersetzen Sie ihn durch Ihre E-Mail oder fügen einfach etwas ein, wenn Sie möchten.

20. Kopieren des öffentlichen SSH-Schlüssels zum Backup-Benutzer des Raspberry Pi

Dann müssen Sie Ihren öffentlichen Schlüssel zum Backup-Benutzerkonto des Raspberry Pi kopieren:

ssh-copy-id ~/.ssh/id_rsa.pub bu@rpi2bu

Ersetzen Sie bu und rpi2bu durch Ihren tatsächlichen Backup-Benutzer und Hostnamen. Wenn der Raspberry Pi aus irgendeinem Grund nicht über seinen Hostnamen erkannt werden kann, verwenden Sie seine IP-Adresse.

21. Backup-Skript auf dem Desktop erstellen

Jetzt, da wir uns ohne Passwort auf den Raspberry Pi einloggen können, benötigen wir ein kleines Bash-Skript, das das Backup durchführt. Erstellen Sie ein backup.sh auf dem Desktop.

Bearbeiten Sie ~/Desktop/backup.sh und fügen Sie dies hinzu:

#!/usr/bin/env bash

# Überprüfen auf neuen Monat
ssh bu@rpi2bu '/home/bu/backups.sh newMonth'
# Rsync-Backup ausführen
rsync -avzpH  --partial --delete ~/ bu@rpi2bu:/home/bu/current/
# Backup erstellen und bezüglich des freien Speicherplatzes überprüfen
ssh bu@rpi2bu '/home/bu/backups.sh hardLink'

Machen Sie es dann ausführbar:

chmod 0755 ~/Desktop/backup.sh

Und das war’s - natürlich vergessen Sie nicht, den entsprechenden Hostnamen für den Raspberry Pi festzulegen und den Benutzer zu ändern, wenn Sie etwas anderes verwenden.

Backups auf den Raspberry Pi von Windows erstellen

Unter Windows ist es etwas schwieriger, da all diese schönen *nix-Tools fehlen. Besonders SSH und rsync. Die einfache Lösung hier ist jedoch, Cygwin mit den entsprechenden Paketen zu installieren.

22. Cygwin herunterladen

Zuerst müssen wir Cygwin herunterladen und installieren. Laden Sie es von hier herunter. Höchstwahrscheinlich möchten Sie die 64-Bit-Version verwenden.

23. Cygwin mit erforderlichen Paketen installieren

Wenn der Cygwin-Installer-Download abgeschlossen ist, führen Sie ihn aus. Sie werden dann nach ein paar Eingaben gefragt. Geben Sie die Eingaben gemäß der folgenden Liste ein:

Wählen Sie eine Download-Quelle -> Aus dem Internet installieren
Wählen Sie das Stamminstallationsverzeichnis -> C:\cygwin
Lokales Paketverzeichnis -> C:\Users\Downloads (Standard belassen)
Wählen Sie Ihre Internetverbindung -> Direkte Verbindung
Wählen Sie eine Download-Website -> Wählen Sie eine Download-Website, die Ihnen nahe ist

Danach wird Ihnen das Dialogfeld “Pakete auswählen” angezeigt. Hier ist es wichtig, rsync und openssh auszuwählen. Am besten können Sie die Liste mit dem Suchfeld filtern. Geben Sie einfach rsync ein, und Sie finden es im Net-Ordner. Klicken Sie darauf, und die Bin?-Spalte sollte jetzt markiert sein. Wiederholen Sie dies für openssh.

Danach beginnt es, alle Pakete herunterzuladen und zu installieren. Da es viele *nix-Tools herunterladen wird, wird es eine Weile dauern.

24. Erstellen eines öffentlichen SSH-Schlüssels

Nach der Installation von Cygwin, einschließlich rsync und openssh, haben Sie einen neuen “Cygwin”-Eintrag in Ihrem Startmenü. In diesem Eintrag finden Sie den Link zum Cygwin-Terminal. Führen Sie dies aus, und ein Terminal öffnet sich. Geben Sie im Terminal den folgenden Befehl ein, um den öffentlichen SSH-Schlüssel zu erstellen:

ssh-keygen -t rsa -b 4096 -C "[email protected]"

Natürlich ersetzen Sie ihn durch Ihre E-Mail oder fügen einfach etwas ein, wenn Sie möchten.

25. Kopieren des öffentlichen SSH-Schlüssels zum Backup-Benutzer des Raspberry Pi

Dann müssen Sie Ihren öffentlichen Schlüssel zum Backup-Benutzerkonto des Raspberry Pi kopieren:

ssh-copy-id ~/.ssh/id_rsa.pub bu@rpi2bu

Ersetzen Sie bu und rpi2bu durch Ihren tatsächlichen Backup-Benutzer und Hostnamen. Wenn der Raspberry Pi aus irgendeinem Grund nicht über seinen Hostnamen erkannt werden kann, verwenden Sie seine IP-Adresse.

26. Backup-Skript auf dem Desktop erstellen

Öffnen Sie jetzt Ihren Texteditor und geben Sie Folgendes ein:

REM Nur ein kleines Skript zum Erstellen von Backups

REM Überprüfen, ob es ein neuer Monat ist
c:\cygwin\bin\ssh.exe bu@rpi2bu '/home/bu/backups.sh newMonth'
REM Backup mit rsync erstellen
c:\cygwin\bin\rsync -avzpH  --partial --delete -e "c:\cygwin\bin\ssh.exe" /cygdrive/c/Users bu@rpi2bu:/home/bu/current/
REM Hardlink-Kopie erstellen und Speicherplatz bei Bedarf bereinigen
c:\cygwin\bin\ssh.exe bu@rpi2bu '/home/bu/backups.sh hardLink'

Speichern Sie diese Datei als backup.bat auf Ihrem Desktop (oder an einem anderen Ort).

Es ist wichtig, dass die Dateiendung .bat ist, damit Windows sie ausführt.

Wenn Sie Cygwin in einen anderen Ordner installiert haben, geben Sie den entsprechenden Pfad an (standardmäßig wird es c:\cygwin64 für die 64-Bit-Installation verwenden). Ändern Sie auch den Hostnamen des Raspberry Pi und den Backup-Benutzer, wenn Sie etwas anderes verwendet haben.

Wenn Sie jetzt die backup.bat-Datei auf Ihrem Desktop anklicken, öffnet sich ein Terminal und das Backup wird erstellt. Sie könnten es auch von der Windows-Eingabeaufforderung (cmd.exe) ausführen, damit es sich nicht automatisch schließt, wenn es fertig ist.

Überprüfen Sie Ihre Backups

Nur Backups zu erstellen, ist nur die halbe Miete. Sie müssen überprüfen, dass (a) Backups erstellt wurden und (b) Sie sie verwenden können, um die Daten bei Bedarf wiederherzustellen.

Um dies einfach zu machen, haben wir Samba zuvor eingerichtet. Wenn es korrekt konfiguriert ist, sollten Sie im Netzwerkumfeld einen Computer/Server namens rpi2bu in Ihrer Nachbarschaft haben. Öffnen Sie unter Windows einfach den Explorer, gehen Sie zu Netzwerk und warten Sie 2-3 Sekunden, bis es angezeigt wird. Unter Linux, z.B. in Dolphin, klicken Sie einfach auf das Netzwerksymbol in der Seitenleiste. Sie können dann ohne Anmeldeinformationen auf diesen Computer/Server zugreifen, und es wird Ihnen eine Freigabe namens Backup angezeigt. Wenn Sie diese Freigabe betreten, sehen Sie zwei Ordner: current und old sowie zwei Dateien: backups.sh und checkMonth.txt. Sie können die Dateien auf Ihren Computer zurückkopieren, aber da Samba als schreibgeschützt eingerichtet ist, können Sie die Dateien nicht löschen.

Kopieren Sie also ein paar Dateien zurück auf Ihren Computer und überprüfen Sie, ob sie einwandfrei funktionieren. Wenn ja, haben Sie erfolgreich ein Backup erstellt.

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.