Bennett Hollstein

Web developer

Raspberry Pi als internen/externen Backupserver

——-EINLEITUNG——–

Hallo,

in diesem Tutorial geht es darum, wie man mit dem Raspberry Pi einen Backupserver für den Windows PC macht. Hierzu braucht man

-1x Raspberry Pi

-1x Festplatte

Viel Spaß

——-TUTORIAL——-

1. Hamachi installieren (optional)

Will man den Raspberry Pi nicht nur intern (im eigenen Netwerk) laufen lassen, sollte man zuerst Hamachi installieren (Tutorial HIER). Beide Computer (Windows PC und Raspberry Pi) sollten in ein Hamachi Netzwerk.

2. Festplatte mounten

Nun schließen wir die Festplatte an und mounten sie. Man sollte den Raspberry Pi erst ausschalten, bevor man die Festplatte einsteckt. Außerdem ist es zu empfehlen, einen aktiven USB-Hub zu verwenden, falls die Festplatte sich durch USB powered.

Haben wir das getan, müssen wir die Festplatte noch ins Betriebssystem einbinden:

Ich empfehle die Festplatte unter NTFS zu formatieren, deswegen installiere ich am Anfang NTFS

sudo apt-get install ntfs-3g

Nun findet man durch

sudo blkid

heraus, wie die Festplatte heißt (meist /dev/sda1). Ihr kopiert euch am besten die UUID, denn die brauchen wir später noch.

Nun erstellen wir ein Verzeichnis für die Festplatte:

sudo mkdir /media/USBHDD1

Nun formatieren wir die Festplatte mit

sudo umount /dev/sda1

und

sudo mkfs.ext4 /dev/sda1 -L SYNC

Danach müssen wir die Festplatte fest ins System einbinden. Dafür öffnen wir erstmal die entsprechende Datei

sudo nano /etc/fstab

und tragen dort am Ende folgendes ein:

/dev/sda1 /media/USBHDD1   ext4  defaults,errors=remount-ro 0       1

 

Damit die Festplatte auch wirklich gemounted ist, geben wir folgendes ein:

sudo mount -a

3. Energiesparender Betrieb

Damit die Festplatte nicht den ganzen Tag durchläuft, sondern sich nach einer bestimmten Leerlaufzeit in den ruhestand versetzt, installieren wir hdparm:

sudo apt-get install hdparm

und bearbeiten die config

sudo nano /etc/hdparm.conf

,indem wir am Ende folgendes eintragen:

/dev/disk/by-uuid/UUID HIER {
    spindown_time = 60
}

“UUID HIER” muss natürlich wieder durch die UUID ersetzt werden.

3. Samba installieren

Damit wir aus dem Netzwerk auf die Festplatte zugreifen können, brauchen wir Samba. Dies installieren wir mit

sudo apt-get install samba samba-common-bin

Nun erstellen und bearbeiten wird die config mit

sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.old

und

sudo nano /etc/samba/smb.conf

In dieser Datei ersetzen wir

# security = user

durch

 security = user

Nun erstellen wir die Freigabe der Festplatte, indem wir am Ende der Datei folgendes eingeben:

[Backup]
comment = Backupordner fuer Backupuser
path = /media/USBHDD1
writeable = yes
guest ok = no

Danach starten wir Samba neu mit:

sudo /etc/init.d/samba restart

Haben wir das getan, müssen wir ein Passwort für Samba erstellen, dies machen wir mit:

sudo smbpasswd -a pi

4. Windows Backup einstellen

Nun gehen wir an unseren Windows PC, öffnen den Editor, Notepad++ oder was man sonst noch nutzt und geben folgendes ein:

robocopy E:\ \\BACKUPSERVER\Backup /E /IS
if errorlevel 16 goto fail
if errorlevel 15 goto fail
if errorlevel 14 goto fail
if errorlevel 13 goto fail
if errorlevel 12 goto fail
if errorlevel 11 goto fail
if errorlevel 10 goto fail
if errorlevel 9 goto fail
if errorlevel 8 goto fail
if errorlevel 7 goto fail
if errorlevel 6 goto fail
if errorlevel 5 goto fail
if errorlevel 4 goto fail
if errorlevel 3 goto fail
if errorlevel 2 goto fail
if errorlevel 1 goto done
if errorlevel 0 goto done

:fail
@echo Es ist um %date% %time% ein Fehler aufgetreten!
@echo.
pause
exit

:done
@echo Backup erfolgreich beendet um %date% %time% 
@echo.
pause

ANMERKUNG: Ich habe meinem Raspberry Pi in der raspi-config (sudo raspi-config) den Hostname “BACKUPSERVER” gegeben. Wenn euer Raspberry Pi einen anderen Hostname hat (dies könnt ihr herausfinden, indem ihr an eurem Windows PC in  den Explorer und dann auf “Netzwerk” geht. Fügt den Namen in die erste Zeile statt “BACKUPSERVER” ein. Des weiteren wird mit diesem Skript meine komplette “E:\” Festplatte gebackupt. Soll ein anderes Verzeichnis gebackupt werden, ersetzt “E:\” in der ersten Zeile. Sollen keine Unterordner mitkopiert werden, so eintfernt “/E” aus der ersten Zeile. Mit “/IS” werden alle Datein, die bereits auf dem Raspi sind, gelöscht und/oder mit der neuen Datei überschrieben.

Nun speichern wir die Datei als “Backup.bat” ab (ich hab sie auf dem Desktop gespeichert).

5. Automatisches Backup (optional)

Wollt ihr, dass sich das Backup automatisch startet, könnt ihr dies über die Aufgabenplanung tun. Wir gehen in Alle Programm > Zubehör > Systemprogramme > Aufgabenplanung und erstellen eine neue Aufgabe:

Ihr macht rechtsklick auf “Aufgabenplanungbibliothek” > Einfache Aufgabe erstellen. Nun hilft euch der Assistent dabei, die Aufgabe zu erstellen. Ihr könnt übrigens wählen zwischen:

  • Zeitlich gesteuert (täglich, wöchentliche, monatlich oder nur einmalig)
  • Beim Starten des Rechners: Die Aufgaben werden immer beim Starten des Rechners ausgeführt.
  • Bei der Anmeldung: Die Aufgabe wird bei der Anmeldung ausgeführt
  • Beim Auftreten eines bestimmten Ereignisses: Hier kann man das Ausführen der Aufgabe vom Auftreten eines Ereignisses abhängig machen. Durch diese Funktion kann man z.B. beim Auftreten eines Fehlers eine gewünschte Aktion ausführen lassen (Benachrichtigung).
——–Schlusswort——–

Ich hoffe ihr habt nun einen funktionierenden Backupserver mit dem Raspi und ich hoffe euch hat mein Tutorial gefallen.

Übrigens: Wenn ihr eure Dateien vollautomatisch Synchronisiert haben wollt, schaut doch mal auf meinem BitTorrent Sync Tutorial vorbei 🙂

Bennett

Leave a Reply