Blog

Live Suche

Das große Webserver-Backup Tutorial (Teil 2) - Filesystem

​Das Dateisystem ist sehr wahrscheinlich der Ort an dem am meisten gearbeitet wird. Hier mal einen Stylesheet geändert, dort mal das HTML Gerüst erweitert oder die Programmlogik angepasst. In anderen Fällen speicherst du vielleicht wichtige Dateien oder Unterlagen auf deinem Server. Da sollte ein funktionierendes Backup-System mit rotierender Versionierung effektiv und platzsparend laufen.

Im letzten Teil hast du begonnen mit dem Open Source Script AutoMySQLBackup die MySQL-Datenbank zu sichern. In diesem Teil widmest du deine Aufmerksamkeit dem Dateisystem. Auch hier wirst du im ersten Schritt die wichtigen Daten erstmal auf dem lokalen Server belassen um schnell wieder an die gestrige oder vorgestrige Version zu gelangen.

Inkrementelle Sicherung mit rsnapshot

Wie zuvor, greifen wir auf eine fertige Lösung zurück, rsnapshot. Es speichert inkrementelle und rotiernde Backups, sodass du dir um die Versionierung keine Gedanken mehr machen musst. Doch damit du verstehst was inkrementelle Sicherungen sind, habe ich nachfolgend den entsprechenden Wikipedia Auszug zitiert.

​Bei der inkrementellen Sicherung werden immer nur die Dateien oder Teile von Dateien gespeichert, die seit der letzten inkrementellen Sicherung oder (bei der ersten inkrementellen Sicherung) seit der letzten Komplettsicherung geändert wurden oder neu hinzugekommen sind. Es wird also immer auf der letzten inkrementellen Sicherung aufgesetzt.

Wikipedia

Konkret bedeutet dies, dass rsnapshot unveränderte Dateien nicht mehrfach anlegt und darin besteht der größte Vorteil dieses Verfahren: Wir sparen Speicherplatz! 

In diesem Tutorial wird rsnapshot auf einem Debian Jessie System installiert, die Anleitung sollte aber auf jedem anderen Linux System anwendbar sein. 

Manuelle Installation von rsnapshot

Wie oben erwähnt, installierst du rsnapshot manuell und bedienst dich in dem Ubuntu Archive (Falls du Ubuntu als OS im Einsatz hast, sollte ein apt-get install rsnapshot ausreichen um das aktuellste Paket zu installieren).

Dazu führst du einfach folgende Schritte durch:

cd #
# Falls vom rsnapshot Bug betroffen, aktuellere Version installieren
wget https://launchpad.net/ubuntu/+archive/primary/+files/rsnapshot_1.4.0-1_all.deb
dpkg -i rsnapshot_1.4.0-1_all.deb
# rsnapshot Konfiguration vornehmen ...
nano /etc/rsnapshot.conf 

Konfiguration von rsnapshot

​Als nächstes solltest du die Konfiguration anpassen. Nachfolgend habe ich dir exemplarisch meine geänderten Einträge aus der Konfiguration mit Kommentaren rausgezogen:

# Speicherort der Sicherungen
snapshot_root   /var/backup/files/
# Im nächsten Teil werde ich auf Offsite-Backups eingehen. Falls du also das Backup
# per remote ausführen willst, benötigst du diese Option.
cmd_ssh /usr/bin/ssh
# Damit geben wir rsnapshot die Möglichkeit den restlichen freien Speicher zu prüfen.
cmd_du          /usr/bin/du
# Festlegung der Intervalle mit aussagekräftigen Bezeichnungen
retain  daily   7
retain  weekly  4
retain  monthly 3
# Spezielle Logfile festlegen
logfile /var/log/rsnapshot.log
# Zu sichernde Ordner festlegen
# Schema: backup [Quellordner] [Ziel]
backup  /home/          localhost/
backup  /etc/           localhost/
backup  /var/www/       localhost/
 

Wenn alles konfiguriert ist, testest du deine Einstellungen indem du rsnapshot ein Backup durchführen lässt:

rsnapshot daily 

Je nach Größe der zu sichernden Ordner kann das Backup einige Minuten dauern. Wenn alles durchgelaufen ist, solltest du unter /var/backup/files/daily.0/localhost deine gesicherten Dateien auffinden. In der Log unter /var/log/rsnapshot.log sollte nun ebenfalls als letzter Eintrag folgendes zu finden sein:

/usr/bin/rsnapshot daily: completed successfully 

Cronjob für rsnapshot

​Zu guter Letzt legst du noch einen Cronjob für rsnapshot an, damit du dir keine Gedanken mehr machen musst:

nano /etc/cron.d/rsnapshot
# mit folgendem Inhalt
0 4             1 * *           root    /usr/bin/rsnapshot monthly
30 3            * * 0           root    /usr/bin/rsnapshot weekly
0 3             * * *           root    /usr/bin/rsnapshot daily 

Gratuliere! Du hast nun eine eigene inkrementelle und rotiernde Backup Lösung eingerichtet. Wenn du bereits der Anleitung aus Teil 1 gefolgt bist, hast du nun alle deine Daten automatisch gesichert. 

Doch ist dies nun wirklich alles sicher? NEIN! 

Aktuell hast du eine Onsite-Backup Lösung. Sprich: Wenn irgendetwas mit deinem Server passiert und du nicht mehr an die Daten auf der Festplatte kommst, stehst du ebenfalls im Regen. 

In Teil 3 der Tutorial-Reihe werde ich auf mehrere Offsite-Backup Varianten eingehen und entsprechende Lösungen Schritt für Schritt erklären.

Das große Webserver-Backup Tutorial (Teil1) - MySQL

Webserver Sicherungen kosten Zeit und Nerven. Wenn man hier keinen Automatismus erstellt, liegen Backups oft eine ganze Zeit zurück. Spätestens wenn dann einmal die Webseite nicht mehr erreichbar ist, denkt man wieder an die letzte Sicherung und bekommt oft einen Adrenalinschub. In diesem Tutorial möchte ich dir Schritt für Schritt erklär...
https://wdj.ac/blog/webserver-backup-tutorial-1
0
Joomla! 3.6.4 Security Release
Neuer Krypto-Messenger Ricochet lässt Anzahl der T...

Ähnliche Beiträge

Ich stimme zu, dass diese Seite Cookies für Analysen verwendet.