Kopia ist ein freies Backup-Werkzeug, das Sicherungen als verschlüsselte, deduplizierte Snapshots ablegt. Es ist in Go geschrieben, läuft auf Linux, macOS und Windows und deckt mit grafischer Oberfläche, CLI und Server-Betrieb drei Nutzungsarten ab – vom Arbeitsplatz bis zum zentralen Backup-Server mit mehreren Clients.

\n

Konzept

\n

Kopia speichert Daten in einem Repository, das aus unveränderlichen Blöcken aufgebaut ist. Diese Blöcke werden über einen Index referenziert; ein Snapshot ist damit nur eine Liste von Verweisen, kein zweiter Datenbestand. Daraus folgt der gleiche Vorteil wie bei anderen modernen Werkzeugen: Die tägliche Sicherung kostet fast nur den Speicherplatz der Änderungen.

\n

Policies und Aufbewahrung

\n

Kopia organisiert Regeln als Policies, die global, pro Benutzer, pro Host oder pro Verzeichnis gelten. Einstellbar sind unter anderem:

\n
    \n
  • Ignorierregeln über Caching-Verzeichnisse, Ausschlussmuster und Dateigrößen
  • \n
  • Aufbewahrung nach Anzahl oder als Zeitraster – etwa stündlich für 48 Stunden, täglich für 30 Tage, monatlich für ein Jahr
  • \n
  • Kompression je Dateityp, inklusive der Möglichkeit, bereits komprimierte Formate auszunehmen
  • \n
  • Zeitfenster, in denen Sicherungen überhaupt laufen dürfen
  • \n
  • Fehlerbehandlung: ob ein einzelner Fehler den ganzen Lauf abbricht
  • \n
\n

Ziele und Betrieb

\n

Als Ziele dienen Verzeichnisse, NFS, SMB, WebDAV, SFTP, rclone-Ziele sowie S3-kompatible Objektspeicher und MinIO. Im Server-Betrieb stellt Kopia eine HTTP-API bereit, über die mehrere Clients ihre Sicherungen melden und die Oberfläche Kennzahlen zeigt. Wichtig ist die Trennung der Passwörter: Ein Repository-Passwort schützt die Daten, ein Server-Zugang regelt die Anmeldung mehrerer Nutzer.

\n

Werkzeuge im Alltag

\n
# Repository anlegen und verbinden\nkopia repository create s3 --bucket host01-backup --prefix kopia\nkopia repository connect s3 --bucket host01-backup --prefix kopia\n\n# Sicherung erstellen\nkopia snapshot create /etc /home /var/www\n\n# Snapshots auflisten\nkopia snapshot list --all\n\n# Aufbewahrung durchsetzen\nkopia snapshot expire .\n\n# Repository verifizieren – auch Blockinhalte\nkopia snapshot verify --verify-files-percent=10\n\n# Zwei Snapshots vergleichen\nkopia diff <snapshot-a> <snapshot-b>
\n

Eine Besonderheit ist die Fehlerkorrektur: Kopia kann Repositories mit Redundanz anlegen, sodass einzelne beschädigte Blöcke rekonstruierbar bleiben. Außerdem lässt sich ein Repository als Dateisystem einbinden und durchsuchen. Wer Kopia gegen Restic abwägt: Restic ist kompakter und skriptfreundlicher, Kopia bietet mehr Komfort, Policies und eine Oberfläche für Endgeräte.

\n

Verwandte Grundlagen: Backup, Restic, Deduplizierung, Backup-Strategien: 3-2-1 und Automatisierung.