Zum Hauptinhalt springen
S-EDV news
← Alle Anleitungen
📘 Anleitung Backup & Datensicherung 01.06.2026 · 9 min Lesezeit

Restic Backup auf Linux und Windows einrichten und automatisieren (cron/Task Scheduler)

Restic Backup einrichten leicht gemacht: verschlüsselte, deduplizierte Backups unter Linux und Windows automatisieren - per cron, Aufgabenplanung und rclone-Cloud-Ziel inklusive Restore-Test.

Verschlüsselte Datensicherung mit Restic auf Linux und Windows in die Cloud

Mit dieser Anleitung lernst du, wie du ein Restic Backup einrichten und vollständig automatisieren kannst - unter Linux per cron und unter Windows per Aufgabenplanung. Restic ist ein modernes, quelloffenes Kommandozeilen-Backup-Tool, das deine Daten standardmäßig verschlüsselt, dedupliziert und komprimiert. Diese Schritt-für-Schritt-Anleitung richtet sich an Admins, Homeserver-Betreiber und alle, die ihre Daten zuverlässig sichern wollen - lokal und zusätzlich in der Cloud über rclone (S3, Wasabi, Backblaze B2). Am Ende läuft dein Backup automatisch im Hintergrund, alte Snapshots werden nach einer Aufbewahrungsregel bereinigt, und du hast den Restore mindestens einmal getestet.

Kurzfassung: Restic installieren, mit restic init ein verschlüsseltes Repository anlegen, mit restic backup Snapshots erstellen, die Befehle per cron (Linux) bzw. Aufgabenplanung (Windows) automatisieren, optional ein rclone-Cloud-Ziel anbinden und mit restic forget --prune aufräumen. Restore vorab testen.Was ist Restic und warum solltest du es nutzen?

Restic ist ein freies Backup-Programm (BSD-2-Lizenz), das in Go geschrieben ist und als einzelne Binärdatei für Linux, Windows, macOS und BSD ausgeliefert wird. Es speichert deine Daten in einem sogenannten Repository - das kann ein lokaler Ordner, eine externe Festplatte, ein SFTP-Server oder ein Cloud-Speicher sein. Drei Eigenschaften machen Restic besonders attraktiv:

  1. Verschlüsselung standardmäßig aktiv: Alle Daten werden vor dem Schreiben mit AES-256 verschlüsselt und mit Poly1305-AES authentifiziert. Ohne dein Passwort kommt niemand an die Inhalte.
  2. Deduplizierung: Restic zerlegt Dateien in variable Blöcke und speichert identische Blöcke nur einmal. Selbst über mehrere Hosts und Snapshots hinweg sparst du dadurch enorm Speicherplatz.
  3. Kompression: Seit Restic 0.14 werden Daten zusätzlich komprimiert (Standard auto), was das Repository weiter verkleinert.

Jeder Sicherungslauf erzeugt einen Snapshot - eine konsistente Momentaufnahme deiner Dateien. Snapshots sind unveränderlich und lassen sich einzeln wiederherstellen, durchsuchen oder als Verzeichnis einhängen. Das macht Restic zu einer soliden Grundlage für eine 3-2-1-Backup-Strategie.

Voraussetzungen

  1. Einen Linux-Host (Debian/Ubuntu, Fedora, Arch o. Ä.) und/oder einen Windows-10/11- bzw. Windows-Server-Rechner
  2. Administrator- bzw. root/sudo-Rechte zum Installieren und zum Anlegen geplanter Aufgaben
  3. Ein Backup-Ziel: lokaler Pfad, externe Platte, SFTP-Server oder ein Cloud-Konto (Backblaze B2, Wasabi, AWS S3, S3-kompatibel)
  4. Optional rclone für die Cloud-Anbindung (für nahezu jeden Cloud-Provider)
  5. Ein starkes, sicher hinterlegtes Repository-Passwort - ohne dieses Passwort sind deine Backups unwiederbringlich verloren

Schritt 1: Restic installieren

Restic ist in praktisch jeder Linux-Distribution paketiert. Alternativ lädst du die Binärdatei direkt von GitHub.

Linux (Paketmanager)

# Debian / Ubuntu
sudo apt update
sudo apt install restic

# Fedora
sudo dnf install restic

# Arch Linux
sudo pacman -S restic

Linux (Binärdatei von GitHub)

# Self-Update bei vorhandener Installation
sudo restic self-update

# Version prüfen
restic version

Windows

Unter Windows installierst du Restic am bequemsten über einen Paketmanager oder lädst die .exe aus den GitHub-Releases und legst sie in einen Ordner im PATH (z. B. C:\Tools\restic).

# Mit winget
winget install restic.restic

# Oder mit Chocolatey
choco install restic

# Version prüfen
restic version

Schritt 2: Restic Repository initialisieren

Bevor du sichern kannst, musst du ein Repository anlegen. Dabei legst du das Verschlüsselungspasswort fest. Wir verwenden Umgebungsvariablen, damit du Passwort und Pfad nicht bei jedem Befehl wiederholen musst.

Lokales oder externes Ziel (Linux)

# Repository-Pfad und Passwort als Umgebungsvariablen setzen
export RESTIC_REPOSITORY="/mnt/backup/restic-repo"
export RESTIC_PASSWORD="DeinSehrStarkesPasswort"

# Repository initialisieren (restic repository initialisieren)
restic init

Sicherer als RESTIC_PASSWORD ist eine Passwortdatei mit eingeschränkten Rechten:

echo "DeinSehrStarkesPasswort" | sudo tee /root/.restic-pass > /dev/null
sudo chmod 600 /root/.restic-pass

export RESTIC_REPOSITORY="/mnt/backup/restic-repo"
export RESTIC_PASSWORD_FILE="/root/.restic-pass"
restic init

Windows (PowerShell)

# Repository auf externer Platte E: anlegen
$env:RESTIC_REPOSITORY = "E:\restic-repo"
$env:RESTIC_PASSWORD   = "DeinSehrStarkesPasswort"

restic init
Notiere dir das Passwort an einem sicheren Ort (Passwort-Manager). Geht es verloren, kannst du auf KEINEN deiner Snapshots mehr zugreifen.

Schritt 3: Das erste Backup erstellen

Jetzt erstellst du deinen ersten Snapshot. Übergib einfach die Verzeichnisse, die gesichert werden sollen.

Linux

# Wichtige Verzeichnisse sichern
restic backup /etc /home /var/www

# Mit Ausschlüssen und Tag
restic backup /home \
  --exclude="/home/*/.cache" \
  --exclude-file=/root/restic-excludes.txt \
  --tag woechentlich

Eine Exclude-Datei (/root/restic-excludes.txt) könnte so aussehen:

**/node_modules
**/.cache
**/*.tmp
/home/*/Downloads

Windows

# Benutzerdaten sichern
restic backup C:\Users\Marcel\Documents C:\Users\Marcel\Pictures

# Mit Ausschluss-Muster
restic backup C:\Daten --exclude "*.tmp" --exclude "C:\Daten\temp"

Restic zeigt nach dem Lauf an, wie viele Dateien neu, geändert oder unverändert waren und wie viel tatsächlich in das Repository geschrieben wurde. Beim zweiten Lauf wirst du sehen, dass dank Deduplizierung nur die Änderungen übertragen werden.

Schritt 4: rclone-Cloud-Ziel anbinden (S3, Wasabi, Backblaze B2)

Für ein Offsite-Backup kombinierst du Restic mit rclone. So erreichst du nahezu jeden Cloud-Anbieter über ein einheitliches Restic-Backend (restic rclone cloud).

rclone-Remote einrichten

# rclone installieren
sudo apt install rclone   # oder: curl https://rclone.org/install.sh | sudo bash

# Interaktive Konfiguration starten und z. B. ein Backblaze-B2- oder S3-Remote anlegen
rclone config

Nimm im Assistenten beispielsweise den Namen b2backup und wähle Backblaze B2 oder ein S3-kompatibles Ziel (Wasabi, AWS S3, MinIO). Danach nutzt du das Remote als Restic-Repository:

# Repository im Cloud-Bucket initialisieren
export RESTIC_REPOSITORY="rclone:b2backup:mein-bucket/restic"
export RESTIC_PASSWORD_FILE="/root/.restic-pass"
restic init

# Backup direkt in die Cloud
restic backup /home /etc

Alternativ kannst du native Backends nutzen, etwa s3:s3.amazonaws.com/mein-bucket oder b2:mein-bucket:restic, indem du die jeweiligen Zugangsschlüssel als Umgebungsvariablen setzt.

Schritt 5: Backups unter Linux mit cron automatisieren

Damit das Backup ohne dein Zutun läuft, legst du ein Skript an und planst es per cron (restic cron job linux).

Backup-Skript anlegen

sudo tee /usr/local/bin/restic-backup.sh > /dev/null << 'EOF'
#!/usr/bin/env bash
set -euo pipefail

export RESTIC_REPOSITORY="rclone:b2backup:mein-bucket/restic"
export RESTIC_PASSWORD_FILE="/root/.restic-pass"

# Backup erstellen
restic backup /etc /home /var/www \
  --exclude-file=/root/restic-excludes.txt \
  --tag automatisch

# Aufbewahrung: alte Snapshots entfernen und Repository aufraeumen
restic forget \
  --keep-daily 7 \
  --keep-weekly 4 \
  --keep-monthly 6 \
  --prune

# Integritaet stichprobenartig pruefen
restic check --read-data-subset=5%
EOF

sudo chmod +x /usr/local/bin/restic-backup.sh

cron-Eintrag setzen

# Crontab des root-Users bearbeiten
sudo crontab -e

Füge eine Zeile hinzu, die das Skript täglich um 02:30 Uhr ausführt und das Log schreibt:

30 2 * * * /usr/local/bin/restic-backup.sh >> /var/log/restic-backup.log 2>&1

Wer systemd bevorzugt, kann statt cron auch einen systemd.timer verwenden - der Vorteil ist sauberes Logging über journalctl.

Schritt 6: Backups unter Windows mit der Aufgabenplanung automatisieren

Unter Windows nutzt du ein PowerShell-Skript und die Aufgabenplanung (Task Scheduler).

PowerShell-Skript anlegen

# Datei: C:\Tools\restic\restic-backup.ps1
$env:RESTIC_REPOSITORY = "rclone:b2backup:mein-bucket/restic"
$env:RESTIC_PASSWORD_FILE = "C:\Tools\restic\restic-pass.txt"

restic backup C:\Users\Marcel\Documents C:\Daten --tag automatisch

restic forget --keep-daily 7 --keep-weekly 4 --keep-monthly 6 --prune

restic check --read-data-subset=5%

Lege das Passwort in C:\Tools\restic\restic-pass.txt ab und beschränke die NTFS-Rechte auf den ausführenden Benutzer bzw. SYSTEM.

Geplante Aufgabe per PowerShell registrieren

$action  = New-ScheduledTaskAction -Execute "powershell.exe" `
  -Argument "-NoProfile -ExecutionPolicy Bypass -File C:\Tools\restic\restic-backup.ps1"
$trigger = New-ScheduledTaskTrigger -Daily -At 2:30AM
$principal = New-ScheduledTaskPrincipal -UserId "SYSTEM" -LogonType ServiceAccount -RunLevel Highest

Register-ScheduledTask -TaskName "Restic Backup" `
  -Action $action -Trigger $trigger -Principal $principal `
  -Description "Taegliches Restic-Backup mit Aufbewahrung"

Du kannst die Aufgabe anschließend in der grafischen Aufgabenplanung kontrollieren, manuell starten und das Ergebnis im Verlauf-Tab prüfen.

Schritt 7: Verifikation - Snapshots prüfen und Restore testen

Ein Backup ist nur so gut wie sein letzter erfolgreicher Restore. Teste die Wiederherstellung, bevor du dich darauf verlässt (restic snapshots restore).

Snapshots auflisten

# Alle Snapshots anzeigen
restic snapshots

# Inhalt durchsuchen
restic ls latest
restic find "wichtige-datei.pdf"

Wiederherstellen

# Kompletten letzten Snapshot in einen Zielordner zurueckspielen
restic restore latest --target /tmp/restic-restore

# Nur einen bestimmten Pfad wiederherstellen
restic restore latest --target /tmp/restic-restore --include /home/marcel/Documents

# Bestimmten Snapshot ueber Kurz-ID
restic restore 1a2b3c4d --target /tmp/restic-restore

Alternativ kannst du das Repository unter Linux per FUSE einhängen und wie ein normales Verzeichnis durchblättern:

mkdir -p /mnt/restic
restic mount /mnt/restic
# In einem zweiten Terminal: ls /mnt/restic/snapshots/latest

Prüfe regelmäßig die Integrität des Repositorys:

restic check

Updates & Wartung

Halte Restic und rclone aktuell, damit du von Sicherheits- und Performance-Verbesserungen profitierst:

# Restic aktualisieren
sudo restic self-update
# oder ueber den Paketmanager
sudo apt update && sudo apt upgrade restic

Behalte die Repository-Größe im Blick und plane regelmäßiges Pruning. Das restic forget --prune aus dem Backup-Skript hält das Repository schlank, indem nicht mehr referenzierte Datenblöcke entfernt werden. Kontrolliere zudem die Aufbewahrungsregeln (--keep-daily, --keep-weekly, --keep-monthly), damit sie zu deinem Speicherbudget passen.

Backup-Hinweis

Vergiss nicht, das Repository-Passwort und - bei rclone - die rclone.conf separat und sicher zu sichern. Beides liegt außerhalb des Restic-Repositorys und ist für den Zugriff unverzichtbar. Bewahre eine Kopie an einem anderen Ort als die Backups selbst auf. Wer Backups als festen Bestandteil einer Selfhosting-Umgebung betreiben möchte, findet in unserer Anleitung zur Docker-Compose-Grundlage für Selfhosting unter Linux eine passende Basis, um Restic-Backups containerbasiert einzuplanen.

Troubleshooting

  1. "repository is already locked": Ein vorheriger Lauf wurde abgebrochen. Prüfe mit restic list locks und entferne veraltete Sperren mit restic unlock, sofern kein anderer Prozess läuft.
  2. "wrong password or no key found": Repository-Pfad oder Passwort/Passwortdatei stimmen nicht. Kontrolliere RESTIC_REPOSITORY und RESTIC_PASSWORD_FILE.
  3. cron-Job läuft nicht: In cron fehlt oft die PATH-Umgebung. Verwende absolute Pfade (z. B. /usr/bin/restic) und setze die Umgebungsvariablen direkt im Skript.
  4. Windows-Aufgabe scheitert lautlos: Stelle die Aufgabe auf "Unabhängig von der Benutzeranmeldung ausführen" und prüfe den Verlauf. Bei rclone muss die rclone.conf für den ausführenden Kontext (SYSTEM) auffindbar sein.
  5. Backup sehr langsam in die Cloud: Erhöhe die Parallelität mit --option rclone.connections=8 und prüfe deine Upload-Bandbreite.
  6. Repository wächst trotz forget: restic forget markiert Snapshots nur; erst --prune gibt den Speicher tatsächlich frei.

Häufige Fragen

Wie sicher ist die Verschlüsselung von Restic?

Restic verschlüsselt sämtliche Daten clientseitig mit AES-256 im Counter-Modus und sichert die Integrität über Poly1305-AES. Selbst der Cloud-Anbieter sieht nur verschlüsselte Blöcke. Entscheidend ist allein dein Repository-Passwort - es verlässt deinen Rechner nie.

Kann ich mit Restic Linux und Windows in dasselbe Repository sichern?

Ja. Restic unterstützt mehrere Hosts in einem Repository, und die Deduplizierung wirkt sogar host-übergreifend. Jeder Snapshot wird mit Hostname und Pfaden versehen, sodass du Quellen sauber auseinanderhalten kannst. Achte nur darauf, dass nicht zwei Läufe gleichzeitig schreiben.

Wie automatisiere ich Restic-Backups am einfachsten?

Unter Linux legst du ein Skript an und rufst es per cron oder systemd-Timer auf; unter Windows nutzt du ein PowerShell-Skript zusammen mit der Aufgabenplanung. Lege Backup, forget --prune und einen check ins selbe Skript, damit Sicherung und Wartung in einem Rutsch laufen.

Was bedeutet --keep-daily, --keep-weekly und --keep-monthly?

Diese Optionen von restic forget steuern die Aufbewahrung: Restic behält die jeweils neuesten Snapshots pro Tag, Woche und Monat und löscht den Rest. So bleibt eine sinnvolle Historie erhalten, ohne dass das Repository unbegrenzt wächst.

Brauche ich zwingend rclone für Cloud-Backups?

Nein. Restic bringt native Backends für S3-kompatible Speicher, Backblaze B2, Azure, Google Cloud Storage, SFTP und REST mit. rclone ist nur dann sinnvoll, wenn du einen Anbieter ohne natives Backend nutzen oder ein einheitliches Interface über viele Clouds hinweg haben möchtest.

Fazit

Du hast jetzt ein vollständiges, verschlüsseltes Restic-Setup, das unter Linux per cron und unter Windows per Aufgabenplanung automatisch läuft. Dank Deduplizierung und Kompression bleibt das Repository kompakt, ein rclone-Cloud-Ziel sorgt für Offsite-Sicherheit, und die Aufbewahrungsregeln halten alles aufgeräumt. Der wichtigste Schritt bleibt der regelmäßige Restore-Test - nur so weißt du sicher, dass deine Backups im Ernstfall funktionieren. Plane dir einen festen Termin, um restic restore und restic check auszuführen.

Weiterführende Anleitungen und Quellen

Wenn du dich tiefer mit Backup- und Selfhosting-Themen beschäftigen willst, findest du in unserer Kategorie Backup weitere Beiträge. Eine solide Container-Basis für automatisierte Sicherungen liefert dir unsere Anleitung zur Docker-Compose-Grundlage für Selfhosting unter Linux.

Quellen: Offizielle Restic-Dokumentation und das rclone-Projekt - siehe die unten verlinkten Originalquellen für vollständige Optionslisten und weiterführende Details.