In der heutigen digitalen Welt sind Backups unerlässlich. Der Verlust von Daten kann sowohl privat als auch beruflich erhebliche Folgen haben. Um deine Daten zuverlässig zu sichern, möchte ich dir zeigen, wie du automatisierte Backups mit systemd und rsync einrichten kannst. Diese Kombination ist sowohl mächtig als auch flexibel.
Was ist rsync und systemd?
rsync ist ein bewährtes Tool zur Dateiübertragung und Synchronisation. Es hat eine hohe Effizienz und kann nur die Teile einer Datei übertragen, die sich geändert haben. Dadurch spart es Zeit und Bandbreite. Es unterstützt verschiedene Protokolle und kann lokale sowie entfernte Backups durchführen.
systemd ist ein System- und Dienst-Manager für Linux. Er ermöglicht es, Dienste zu starten, zu stoppen und zu verwalten. Mit systemd kannst du einfach timed services einrichten, die in regelmäßigen Abständen ausgeführt werden.
Benötigte Pakete installieren
Bevor wir loslegen, stelle sicher, dass rsync installiert ist. Du kannst es mit dem folgenden Befehl installieren:
sudo apt-get install rsync
Backup-Skript erstellen
Erstelle ein Backup-Skript, das die zu sichernden Daten definiert. Zum Beispiel:
#!/bin/bash
rsync -av --delete /pfad/zur/quelles /pfad/zum/ziel
Hierbei bedeuten die Optionen:
- -a: Archiv-Modus (kopiert rekursiv und erhält die Dateiberechtigungen)
- -v: Verbose (zeigt detaillierte Informationen während der Übertragung)
- –delete: Löscht im Zielverzeichnis Dateien, die im Quellverzeichnis nicht mehr vorhanden sind
Speichere das Skript beispielsweise unter /usr/local/bin/backup.sh und mache es ausführbar:
chmod +x /usr/local/bin/backup.sh
systemd Service und Timer erstellen
Um dein Backup-Skript automatisiert auszuführen, musst du zwei Dateien erstellen: eine für den Service und eine für den Timer.
Erstelle zunächst die Service-Datei:
[Unit]
Description=Backup Service
[Service]
Type=oneshot
ExecStart=/usr/local/bin/backup.sh
Speichere diese Datei unter /etc/systemd/system/backup.service.
Jetzt erstellen wir die Timer-Datei:
[Unit]
Description=Runs Backup Service daily
[Timer]
OnCalendar=daily
Persistent=true
[Install]
WantedBy=timers.target
Speichere diese Datei unter /etc/systemd/system/backup.timer.
Timer aktivieren und starten
Aktiviere den Timer und starte ihn mit den folgenden Befehlen:
sudo systemctl enable backup.timer
sudo systemctl start backup.timer
Jetzt wird dein Backup-Skript täglich ausgeführt. Du kannst den Status des Timers überprüfen mit:
systemctl list-timers --all
Überprüfen der Backups
Es ist wichtig zu überprüfen, ob die Backups tatsächlich funktionieren. Du kannst dies tun, indem du die Logs von systemd einsehen:
journalctl -u backup.service
Diese Schritte etablieren eine robuste Lösung für automatisierte Backups mit systemd und rsync. Durch die Verwendung dieser mächtigen Tools kannst du sicherstellen, dass deine wichtigen Daten immer gesichert sind.