# Restic Backup

# 🔒 Restic Backup &amp; Restore

Vollständige Anleitung für Linux | Sicher • Verschlüsselt • Zuverlässig

# 1. Was ist Restic?

Restic ist ein modernes, kostenloses Open-Source-Backup-Programm für Linux, macOS und Windows. Es zeichnet sich durch folgende Eigenschaften aus:

<table id="bkmrk-eigenschaft-beschrei"><tbody><tr><th>Eigenschaft</th><th>Beschreibung</th></tr><tr><td>**Verschlüsselung**</td><td>Alle Backups werden automatisch mit AES-256 verschlüsselt</td></tr><tr><td>**Deduplizierung**</td><td>Gleiche Daten werden nur einmal gespeichert – spart Speicherplatz</td></tr><tr><td>**Inkrementell**</td><td>Nur geänderte Dateien werden gesichert – sehr schnell</td></tr><tr><td>**Viele Ziele**</td><td>Lokal, externe Festplatte, Nextcloud (WebDAV), S3, SFTP, u.v.m.</td></tr><tr><td>**Open Source**</td><td>Kostenlos, transparent, aktiv weiterentwickelt</td></tr><tr><td>**Cross-Platform**</td><td>Backup auf Linux erstellen, auf Windows wiederherstellen</td></tr></tbody></table>

# 2. Installation

## Debian / Ubuntu

```
sudo apt update && sudo apt install restic
```

## Fedora / Rocky Linux / AlmaLinux

```
sudo dnf install restic
```

## Aktuellste Version manuell installieren

Die Version in den Paketquellen ist manchmal veraltet. Die neueste Version so aktualisieren:

```
sudo restic self-update
```

<div class="note" id="bkmrk-%F0%9F%92%A1-nach-der-installat">💡 Nach der Installation immer mit `restic version` prüfen, ob die Installation geklappt hat.</div># 3. Repository einrichten

Restic speichert Backups in einem sogenannten **Repository** (kurz: Repo). Dieses muss einmalig initialisiert werden.

## 3.1 Lokales Repository (externe Festplatte)

```
restic init --repo /mnt/externe-festplatte/backups
```

Restic fragt nach einem Passwort – dieses ist sehr wichtig! Ohne Passwort kann das Backup **nicht** wiederhergestellt werden.

<div class="warn" id="bkmrk-%E2%9A%A0%EF%B8%8F-das-passwort-unbe">⚠️ Das Passwort unbedingt sicher aufbewahren! Am besten in einem Passwortmanager (z.B. KeePassXC) oder ausgedruckt an einem sicheren Ort.</div>## 3.2 Nextcloud Repository (WebDAV)

Restic kann direkt in deine Nextcloud sichern. Dazu wird das Tool **rclone** als Brücke verwendet.

### Schritt 1: rclone installieren

```
sudo apt install rclone
```

### Schritt 2: rclone konfigurieren

```
rclone config
```

Im interaktiven Menü folgendes auswählen:

- `n` für neues Remote
- Name: `nextcloud`
- Typ: `webdav`
- URL: `https://deine-nextcloud.de/remote.php/dav/files/BENUTZERNAME/`
- Vendor: `nextcloud`
- Benutzername und Passwort eingeben

### Schritt 3: Repository initialisieren

```
restic init --repo rclone:nextcloud:/Restic-Backups
```

<div class="note" id="bkmrk-%F0%9F%92%A1-der-ordner-%22restic">💡 Der Ordner "Restic-Backups" wird automatisch in deiner Nextcloud angelegt.</div># 4. Backup erstellen

## 4.1 Home-Verzeichnis sichern (empfohlen)

```
restic backup --repo /mnt/externe-festplatte/backups /home/BENUTZERNAME
```

Für Nextcloud entsprechend:

```
restic backup --repo rclone:nextcloud:/Restic-Backups /home/BENUTZERNAME
```

## 4.2 Ganzes System sichern

Um das komplette System zu sichern, sollten einige Systemverzeichnisse ausgeschlossen werden:

```
restic backup --repo /mnt/externe-festplatte/backups / \
  --exclude /proc \
  --exclude /sys \
  --exclude /dev \
  --exclude /run \
  --exclude /tmp \
  --exclude /mnt \
  --exclude /media
```

<div class="warn" id="bkmrk-%E2%9A%A0%EF%B8%8F-f%C3%BCr-system-backup">⚠️ Für System-Backups müssen Root-Rechte verwendet werden: `sudo restic backup ...`</div>## 4.3 Backup mit Tags

Tags helfen beim Organisieren und späteren Wiederherstellen:

```
restic backup --repo /mnt/externe-festplatte/backups /home/BENUTZERNAME --tag wöchentlich
```

## 4.4 Passwort-Eingabe automatisieren

Um das Passwort nicht jedes Mal eintippen zu müssen, kann es in einer Datei gespeichert werden:

```
echo 'dein-sicheres-passwort' > ~/.restic-passwort
chmod 600 ~/.restic-passwort
```

Dann beim Aufruf:

```
restic backup --repo /mnt/externe-festplatte/backups --password-file ~/.restic-passwort /home/BENUTZERNAME
```

# 5. Backups anzeigen und verwalten

## 5.1 Alle Snapshots anzeigen

```
restic snapshots --repo /mnt/externe-festplatte/backups
```

Beispielausgabe:

```
ID        Zeit                  Host    Pfade
──────────────────────────────────────────────────────
a3b4c5d6  2025-02-20 10:00:00  laptop  /home/max
e7f8a9b0  2025-02-22 10:00:00  laptop  /home/max
```

## 5.2 Inhalt eines Snapshots anzeigen

```
restic ls --repo /mnt/externe-festplatte/backups latest
```

## 5.3 Alte Snapshots löschen (Aufräumen)

Restic kann automatisch alte Snapshots löschen und nur eine bestimmte Anzahl behalten:

```
restic forget --repo /mnt/externe-festplatte/backups \
  --keep-daily 7 \
  --keep-weekly 4 \
  --keep-monthly 6 \
  --prune
```

Diese Einstellung behält: **7 tägliche + 4 wöchentliche + 6 monatliche** Snapshots.

<div class="note" id="bkmrk-%F0%9F%92%A1---prune-entfernt-a">💡 `--prune` entfernt auch die eigentlichen Daten und gibt Speicherplatz frei.</div># 6. Backup wiederherstellen (Restore)

## 6.1 Komplette Wiederherstellung

```
restic restore latest --repo /mnt/externe-festplatte/backups --target /
```

<div class="warn" id="bkmrk-%E2%9A%A0%EF%B8%8F-beim-wiederherste">⚠️ Beim Wiederherstellen auf `/` (Root) werden vorhandene Dateien überschrieben! Nur im Notfall verwenden.</div>## 6.2 In ein anderes Verzeichnis wiederherstellen (empfohlen)

Sicherer ist es, erst in ein temporäres Verzeichnis wiederherzustellen:

```
restic restore latest --repo /mnt/externe-festplatte/backups --target /tmp/wiederherstellung
```

Danach kannst du gezielt einzelne Dateien zurückkopieren.

## 6.3 Bestimmten Snapshot wiederherstellen

Zuerst alle Snapshots anzeigen:

```
restic snapshots --repo /mnt/externe-festplatte/backups
```

Dann den gewünschten Snapshot mit seiner ID wiederherstellen:

```
restic restore a3b4c5d6 --repo /mnt/externe-festplatte/backups --target /tmp/wiederherstellung
```

## 6.4 Einzelne Datei oder Ordner wiederherstellen

Mit `--include` kannst du nur bestimmte Pfade wiederherstellen:

```
restic restore latest --repo /mnt/externe-festplatte/backups \
  --target /tmp/wiederherstellung \
  --include /home/max/Dokumente
```

## 6.5 Backup als Dateisystem mounten

Du kannst Snapshots wie ein Dateisystem einhängen und darin stöbern – ohne etwas wiederherstellen zu müssen:

```
mkdir /tmp/restic-mount
restic mount --repo /mnt/externe-festplatte/backups /tmp/restic-mount
```

Danach kannst du mit dem Dateimanager in `/tmp/restic-mount` alle alten Backups durchsuchen. Mit **Strg+C** beendest du den Mount.

# 7. Automatisches Backup einrichten

## 7.1 Backup-Skript erstellen

Erstelle die Datei `/usr/local/bin/restic-backup.sh`:

```
#!/bin/bash
REPO=/mnt/externe-festplatte/backups
PASSWORT_DATEI=/root/.restic-passwort

# Backup erstellen
restic backup \
  --repo $REPO \
  --password-file $PASSWORT_DATEI \
  /home/BENUTZERNAME

# Alte Snapshots aufräumen
restic forget \
  --repo $REPO \
  --password-file $PASSWORT_DATEI \
  --keep-daily 7 \
  --keep-weekly 4 \
  --keep-monthly 6 \
  --prune
```

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

## 7.2 Automatisch per Cron ausführen

Crontab öffnen:

```
sudo crontab -e
```

Folgende Zeile einfügen (täglich um 02:00 Uhr):

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

## 7.3 Systemd Timer (modernere Alternative)

Erstelle `/etc/systemd/system/restic-backup.service`:

```
[Unit]
Description=Restic Backup

[Service]
Type=oneshot
ExecStart=/usr/local/bin/restic-backup.sh
```

Erstelle `/etc/systemd/system/restic-backup.timer`:

```
[Unit]
Description=Restic Backup täglich

[Timer]
OnCalendar=daily
Persistent=true

[Install]
WantedBy=timers.target
```

Aktivieren:

```
sudo systemctl daemon-reload
sudo systemctl enable --now restic-backup.timer
```

# 8. Backup-Integrität prüfen

Es ist wichtig, Backups regelmäßig zu prüfen um sicherzustellen, dass sie im Notfall wirklich funktionieren.

## Schnelle Prüfung (nur Metadaten)

```
restic check --repo /mnt/externe-festplatte/backups
```

## Vollständige Prüfung (alle Daten)

```
restic check --read-data --repo /mnt/externe-festplatte/backups
```

<div class="note" id="bkmrk-%F0%9F%92%A1-die-vollst%C3%A4ndige-p">💡 Die vollständige Prüfung kann bei großen Backups lange dauern. Empfehlung: einmal monatlich durchführen.</div># 9. Nützliche Umgebungsvariablen

Um Repository und Passwort nicht bei jedem Befehl angeben zu müssen, kannst du diese in deine `~/.bashrc` eintragen:

```
export RESTIC_REPOSITORY=/mnt/externe-festplatte/backups
export RESTIC_PASSWORD_FILE=/home/BENUTZERNAME/.restic-passwort
```

Danach reicht einfach:

```
restic backup /home/BENUTZERNAME
restic snapshots
restic restore latest --target /tmp/wiederherstellung
```

# 10. Schnellreferenz – Alle wichtigen Befehle

<table id="bkmrk-befehl-beschreibung-"><tbody><tr><th>Befehl</th><th>Beschreibung</th></tr><tr><td>`restic init --repo /pfad`</td><td>Repository initialisieren</td></tr><tr><td>`restic backup --repo /pfad /home/user`</td><td>Backup erstellen</td></tr><tr><td>`restic snapshots --repo /pfad`</td><td>Alle Snapshots anzeigen</td></tr><tr><td>`restic restore latest --repo /pfad --target /ziel`</td><td>Letztes Backup wiederherstellen</td></tr><tr><td>`restic restore ID --repo /pfad --target /ziel`</td><td>Bestimmten Snapshot wiederherstellen</td></tr><tr><td>`restic ls --repo /pfad latest`</td><td>Inhalt des letzten Backups anzeigen</td></tr><tr><td>`restic mount --repo /pfad /mnt/punkt`</td><td>Backup als Dateisystem einhängen</td></tr><tr><td>`restic forget --keep-daily 7 --prune`</td><td>Alte Backups löschen</td></tr><tr><td>`restic check --repo /pfad`</td><td>Backup-Integrität prüfen</td></tr><tr><td>`restic self-update`</td><td>Restic auf neueste Version aktualisieren</td></tr></tbody></table>

# 11. Wichtige Tipps

<div class="warn" id="bkmrk-%E2%9A%A0%EF%B8%8F-passwort-sichern%21">⚠️ **Passwort sichern!** Ohne Passwort ist das Backup wertlos. Das Passwort niemals vergessen oder verlieren – es gibt keinen Wiederherstellungsweg!</div><div class="note" id="bkmrk-%F0%9F%92%A1-3-2-1-regel%3A-3-kop">💡 **3-2-1 Regel:** 3 Kopien der Daten, auf 2 verschiedenen Medien, davon 1 außerhalb (z.B. Nextcloud). Nur ein lokales Backup reicht nicht!</div><div class="note" id="bkmrk-%F0%9F%92%A1-backups-regelm%C3%A4%C3%9Fig">💡 **Backups regelmäßig testen!** Ein Backup, das man nie getestet hat, ist unzuverlässig. Stelle mindestens einmal pro Quartal eine Testdatei wieder her.</div><div class="warn" id="bkmrk-%E2%9A%A0%EF%B8%8F-externe-festplatt">⚠️ **Externe Festplatte nach dem Backup abziehen.** Schadsoftware (Ransomware) kann sonst auch das Backup beschädigen oder verschlüsseln.</div><div class="footer" id="bkmrk-restic-backup-%26-rest">Restic Backup &amp; Restore Anleitung – Für Linux | Erstellt Februar 2026</div>