Welches Backup-Programm empfehlt ihr?

Hallo,

ich verwende seit einiger Zeit rsnapshot zum Backup meiner Daten. Zusätzlich sichere ich noch /etc.

Nun sichert rsnapshot bei dem von mir verwendeten Modus (Backup 1 Mal die Woche) 4 Wochen lang die Daten, wobei nur die neueste Fassung aufgehoben wird. Und da kommen mir jetzt Bedenken. Was ist, wenn so eine Datei - unbemerkt - kaputt ist? Dann ist das fehlerfreie Original unrettbar verloren.

Ich bräuchte meiner Meinung nach also ein Programm, mit dem ich über Monate hinweg alle Daten sichere, ohne ältere Fassungen zu überschreiben, sodass ich notfalls auch eine alte Fassung wiederherstellen kann. Und das Programm sollte mich nicht mit Hunderten von Parametern erschlagen.

Was könnt ihr mir empfehlen?

Viele Grüße
Anando

Ich nutze Timeshift und bin sehr zufrieden.
Sollte auch Deine Anforderungen erfüllen.

3 Likes

Für Daten benutze ich grsync. Das erste Mal wird alles kopiert, danach nur die neue und geänderte Dateien, und auf Wunsch werden nicht mehr existierende Dateien im Kopie auch gelöscht. Man hat so eine 1:1 Kopie von den Daten, nicht in einem zip file (oder so etwas ähnliches). Auch sehr bequem wenn du eine Datei brauchst, kannst den einfach mit dem File-Manager zurück setzen.

1 Like

Ich fahre dreistufig:

  1. btrfs snapshots für kurzfristige Backups, z.B. vor einem OS update
  2. Inkrementelle btrfs Snapshots auf eine 2. Platte im Rechner
  3. Borg für langfristige Sicherungen auf meinem Fileserver

Sowohl btrfs Snapshots als auch Borg hat den Vorteil dass die gleichen Daten nur einmal gesichert werden und daher ohne Probleme und großen Platzbedarf viele Versionen gesichert werden können. Bei btrfs auf Fileebene und bei Borg auf Blockebene

Hallo Anando,
meine Empfehlung ist “Back in Time”. Damit Du dir einen groben Überblick verschaffen kannst, siehe hier
https://www.openhsr.ch/app/backintime/
(bis auf die Installation natürlich, in Manjaro musst Du dir das Ding aus dem AUR holen)

viele Grüße gosia

5 Likes

Über das Thema können wahrscheinlich ganze Bücher geschrieben werden :thinking:

Ich erstelle einmal in der Woche ein inkrementelles Backup von meinem Home-Verzeichnis mit rsnapshot auf eine externe Festplatte.
Weil ich ein Angsthase bin mache ich einmal im Monat zusätzlich noch ein Vollbackup mit rsync auf eine weitere externe Festplatte, um das Restrisiko von den inkrementellen Backups zu reduzieren.

Für beide Varianten nutze ich eine Ausnahmeliste um nicht wertlose Dateien ständig zu sichern.
Dabei orientiere ich mich stark an folgende Github Seite: Link
Für das ganze Manöver sind weniger Optionen nötig als man zuerst anhand der riesigen Manpage denken würde.

Rsync Befehl

rsync -axHAX --info=progress2 --exclude-from=homedir-excludes.txt ~/ $backupdir/home

a archive mode; equals -rlptgoD
x don’t cross filesystem boundaries
H preserve hard links
A preserve ACLs
X preserve extended attrs
–info=progress2 mit Progressbar

Um mein System zu sichern erstelle ich vor jedem Update automatisch ein BTRFS Snapshot über einen lipalmp hook. Die Snapshots ohne Zusatztool wie Snapper, in Prinzip so wie Eugen-B das vorgeschlagen hat: Link
Einmal im Monat oder vor großen kritischen Updates erstelle ich mit Clonezilla ein Diskimage meiner System- und Boot-Partition. Das Image speicher ich auf einer internen Daten-SSD ab.

Details

/usr/bin/ocs-sr -or <backup location> -q2 -c -j2 -z1p -i 500000 -sfsck -senc -p choose savedisk autoname <device>

-or Backup root directory

-q2 Using partclone tool

-c Wait for confirmation before saving or restoring

-j2 clone hidden data with dd

-z1p parallel gzip

-i Set the split image file volume size in MB

-sfsck Skip running fsck on the source file system before saving it.

-senc Skip encrypting the image with passphrase

-p choose After backup, choose action: poweroff, reboot, back to terminal (default)

autoname generates a name for your backup image

3 Likes

Vielen Dank euch allen. Eine Entscheidung habe ich noch nicht fällen können, dazu ist zu viel zu lesen und zu bedenken. Ich installiere mir wohl am besten die Programme und vergleiche sie. Probieren geht über Studieren! :wink:

Heute habe ich mir Back in Time angesehen. Ich meine, dieses Programm vor etwa 2 Jahren schon einmal eine Zeitlang verwendet zu haben. Damals konnte ich irgendwelche Einträge nicht machen und/oder ich musste bei jedem Lauf Einträge neu erstellen. Mal beobachten.

Morgen kommt ein anderes Programm dran. Jeden Tag eins.

Viele Grüße und einen schönen Restsonntag noch (bei uns ist angeblich Windstärke 12)

Anando

@nrde: Ich habe mir eben Clonezilla installiert und habe versucht, damit ein Backup zu fahren. Clonezilla konnte aber mit meiner verschlüsselten Backupplatte nichts anfangen.

Einen BTRFS-Snapshot kann ich nicht erstellen, weil ich als Dateisystem ext4 habe.

Rsync kommt wahrscheinlich übermorgen dran.

@TomZ: Morgen werde ich Borg testen.

@admdb: Timeshift scheint mir nicht zur Datensicherung geeignet zu sein, nur zur Sicherung von /. So stand es zumindest in dem Artikel, den ich darüber gelesen habe.

https://www.pcwelt.de/ratgeber/Timeshift-Backups-von-Systemdateien-anlegen-9820036.html

Viele Grüße
Anando

teejee=Anando
grafik

1 Like

Danke für den Hinweis. Ich werde mir dieses Programm also auch mal ansehen.

Mittlerweile habe ich doch mal versucht, Borg zu testen. Es kommt dann aber die Fehlermeldung

/run/media/richard/c9889c82-8d8e-47c0-ba18-7684efa6d897/Borgbackup is not a valid repository. Check repo config.

Morgen teste ich weiter. Ob dieses Programm ebenfalls mit verschlüsselten Backupzielen nicht klarkommt?

Grüße
Anando

Ich habe mein Backup automatisiert, vielleicht hilft ja mein Script für deinen Test morgen:

Wenn ein neuer Rechner in die Sicherung mit aufgenommen wird muss erst ein Repository angelegt werden. In meinem Fall geht das Backup via ssh auf einen Ubuntu server. Fürs Backup nehme ich einen dedizierten Benutzer der auch der einzige ist der auf dem Zielverzeichnis Schreibrechte hat.
Damit ich nicht jedesmal das Passwort eintippen muss kopiere ich den Key einmalig mittels ssh-copy-id backupuser@homeserver auf den Server.

Die EXPORT Geschichten könnte man auch direkt in das borg init Statement übernehmen, aber ich finde es so übersichtlicher.

function installborg {
    sudo -i
    cd .ssh
    ssh-keygen -t rsa
    ssh-copy-id backupuser@homeserver
    export BORG_REPO=backupuser@homeserver:/media/clientbackup/borg-$user
    export BORG_PASSPHRASE='irgendwas langes dass dein Passwordmanager generiert hat'
    borg init --encryption=repokey backupuser@homeserver:/media/clientbackup/borg-$user 
}

Die regelmäsige Sicherung sieht dann so aus:

# Wakeup Homeserver
wol xx:xx:xx:xx:xx:xx
export BORG_PASSPHRASE='wieder das komplizierte Passwort von oben'
export BORG_REPO=backupuser@homeserver:/media/clientbackup/borg-$user

borg create --stats --progress --compression lz4 ::@_$(date +%Y-%m-%d) /mnt/snapshots/@_$(date +%Y-%m-%d)

Ich sichere aber nicht die Verzeichnisse direkt sondern meinen btrfs Snapshot @
Da Du kein btrfs hast müsste dass dann beispielsweise so aussehen:

borg create --stats --progress --compression lz4 ::HomeDir_$(date +%Y-%m-%d) /home/

Und zum Abschluss des Scripts dann noch etwas Housekeeping:

HomeserverHistory="5m"
borg prune --list --show-rc  --keep-within=$HomeserverHistory

Viel Spass damit…

@TomZ: Das ist ein recht dicker Brocken für mich. Zumal ich keinen externen Server habe, sondern auf eine externe Festplatte meine Daten sichere. SSH kommt deswegen auch nicht in Betracht.

Ist trotzdem noch was von deinen Befehls- und Skriptvorschlägen brauchbar?

Viele Grüße
Anando

Wird nur einfacher :slight_smile:

Unter der Annahme dass deine externe Platte als Backup unter /media/Backup gemounted wird sollte die Initialisierung dann in etwa so aussehen:

sudo borg init --encryption=repokey /media/Backup/ 
Enter new passphrase: 
Enter same passphrase again: 
Do you want your passphrase to be displayed for verification? [yN]: y
Your passphrase (between double-quotes): "EinKompliziertesPasswortDeinerWahl"

Danach ist das Repository angelegt und kann mit dem Passwort dass Du angegeben hast geöffnet werden.

Das Sichern geht dann wie folgt:

sudo borg create --stats --progress --compression lz4 /media/Backup::MeinBackup_$(date +%Y-%m-%d) ~
Enter passphrase for key /media/Backup:

~ steht für dein Homeverzeichnis und “MeinBackup_…” ist ein frei vergebener Name der Dir erlaubt die Sicherung zu identifizieren.

Und wenn Du die Sicherung kontrollieren möchtest wird das Backup einfach als Laufwerk gemounted. Z.B. so:

sudo mkdir /media/restore
sudo borg mount /media/Backup /media/restore
1 Like

https://www.borgbackup.org/

https://www.borgbackup.org/demo.html

ah okay, plan b wäre das Image mit einem Passwort zu schützen.

  -senc, --skip-enc-ocs-img
      Skip encrypting the image with passphrase.

  -enc, --enc-ocs-img
      To encrypt the image with passphrase.

@TomZ:
Mit dem Befehl

sudo borg create --stats --progress --compression lz4 /run/media/richard/c9889c82-8d8e-47c0-ba18-7684efa6d897/Borgbackup::MeinBackup_$(date +%Y-%m-%d) ~

lief etwa 20 Minuten lang das Backup. Ich konnte aber auf der externen Platte keine Backupdateien finden. Und

sudo borg mount /run/media/richard/c9889c82-8d8e-47c0-ba18-7684efa6d897/Borgbackup /run/media/restore

meldet:

Repository /run/media/richard/c9889c82-8d8e-47c0-ba18-7684efa6d897/Borgbackup does not exist.

Mit dem Befehl habe ich - nach dem Aushängen des Laufwerks - neu gemountet:

sudo borg mount /run/media/richard/c9889c82-8d8e-47c0-ba18-7684efa6d897/Borgbackup /run/media/restore

Vorher habe ich natürlich den Mountpunkt erstellt.

Wo liegt der Fehler?

Viele Grüße
Anando

Hast du dir mal eins der Videos oben angeschaut?
https://www.borgbackup.org/demo.html

Was meldet

borg info :: --last 1

?

Ja, das erste Video habe ich mir angesehen. Folgendes wird bei Eingabe des von dir angegebenen Befehls ausgegeben:

[richard@Arbeitsrechner ~]$ borg info ::MeinBackup_$(date +%Y-%m-%d) --last
usage: borg info [-h] [–critical] [–error] [–warning] [–info] [–debug]
[–debug-topic TOPIC] [-p] [–log-json] [–lock-wait SECONDS]
[–show-version] [–show-rc] [–umask M] [–remote-path PATH]
[–remote-ratelimit RATE] [–consider-part-files]
[–debug-profile FILE] [–json] [-P PREFIX | -a GLOB]
[–sort-by KEYS] [–first N | --last N]
[REPOSITORY_OR_ARCHIVE]
borg info: error: argument REPOSITORY_OR_ARCHIVE: Invalid location format: “::MeinBackup_2019-03-13”

Ich habe auch den kompletten Pfad /run/media... versucht, aber es kommt das gleiche Ergebnis.

Vielleicht mag er dein Datumsformat nicht, versuch es mal ohne :slight_smile:

Edit: Leerzeichen vergessen

Sie können einige Informationen zu einem Archiv anzeigen. Sie können dies sogar tun, ohne den Archivnamen angeben zu müssen:

Also nur das eingeben!

Mach es wie Karl-Theodor Maria Nikolaus Johann Jacob Philipp Franz Joseph Sylvester Buhl- Freiherr von und zu … Kopieren und einfügen :smiley:

borg info :: --last 1
$ # You can show some information about an archive. You can even do it without needing to specify the archive name:

 $ borg info :: --last 1
 Archive name: specialbackup
 Archive fingerprint: 68e942cc4a48402e48ba87f4887c24e5b9fe06e881b0ca241c791810a108bec0
 Comment:
 Hostname: tux
 Username: rugk
 Time (start): Sun, 2017-07-16 18:52:58
 Time (end): Sun, 2017-07-16 18:53:05
 Duration: 6.99 seconds
 Number of files: 1
 Command line: borg create --progress --stats ::specialbackup -
 Utilization of maximum supported archive size: 0%
 ------------------------------------------------------------------------------
			Original size      Compressed size    Deduplicated size
 This archive:
			629.15 MB            2.47 MB            234.02 kB
 All archives:
			2.50 GB              1.87 GB            570.15 MB
			Unique chunks      Total chunks
 Chunk index:
			1032                 3380      

Forum kindly sponsored by Bytemark