BackupPC ist bei Windows sehr langsam

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
Benutzeravatar
heisenberg
Beiträge: 4203
Registriert: 04.06.2015 01:17:27
Lizenz eigener Beiträge: MIT Lizenz

BackupPC ist bei Windows sehr langsam

Beitrag von heisenberg » 25.06.2024 21:52:07

Simon74 hat geschrieben: ↑ zum Beitrag ↑
22.06.2024 17:24:59
Wie sind eure Erfahrungen mit Cifs/smb?
Hier nicht gut, was unter rsnapshot (mit autofs-mount) kein Problem war, funktionierte hier mit BackupPC nicht wirklich. (mount-timeouts)

Ich habe deshalb mal die rsyncd [https://github.com/backuppc/cygwin-rsyncd] Variante im Einsatz, was bei Windows-Systemen mit kleinen Datenmengen sehr gut funktioniert.
Jedoch dauert es bei inkrementellen Sicherungen ewig.

Ich habe hier einen Windows Server mit ca. 1TB an Daten, die Dauer der Erstsicherung ist mit anderer Backup-Software vergleichbar, bzw. gleich schnell,
bei den nachfolgenden inkrementellen Backups dauert das ganze (bei sehr wenig geänderten Daten unter 50MB) jedoch über 4 Stunden!
Bei rsnapshot hat das ganze etwa 10-15 Minuten benötigt.

Sichert jemand erfolgreich Windows Systeme mit größeren Datenmengen, und guter Geschwindigkeit?
Ich antworte hier mal in einem neuen Thread, weil das nicht wirklich zu dem anderen Thread dazu gehört hat.

Bzgl. Windows wäre meine erste Empfehlung jetzt die BackupPC-Sicherung mal im Debugmodus in der Konsole laufen zu lassen. Dazu aber mal vorher Debianmoreutils installiert, für das enthaltene Zeitstempelwerkzeugt ts und Debianscreen, damit man das im Hintergrund laufen lassen kann und sich wieder dazu verbinden kann.

Also ...

Code: Alles auswählen

# login als backuppc
$ screen -h 100000
$ /usr/share/backuppc/bin/BackupPC_dump -v -f server.domain.tld >&1  | ts -i | tee server.domain.tld.log
Das -h 100000 ist der Zeilenpuffer von screen. Den setze ich etwas höher. Hier bitte Vorsicht. Wenn man den Puffer zu hoch setzt, dann braucht das sehr viel RAM, der beim starten von Screen tatsächlich angefordert wird. Aber 100K Zeilen sind da noch problemlos.

Wenn das fertig ist, kann man schauen, an welchen Stellen die meiste Zeit verbraten wird. In der ersten Zeile steht die Zeit, die seit Ausgabe der vorigen Zeile vergangen ist.

Beispiel von einer Linux-Maschine bei mir:

Code: Alles auswählen


$ cat mybackuppc.log |grep -vE "^00:00:" -B2 -A2 

00:00:00 cmdExecOrEval: about to exec /usr/libexec/backuppc-rsync/rsync_bpc --bpc-top-dir /backup/backuppc \
--bpc-host-name management.mydomain.de --bpc-share-name / --bpc-bkup-num 653 --bpc-bkup-comp 3 \
--bpc-bkup-prevnum 652 --bpc-bkup-prevcomp 3 --bpc-bkup-inode0 2000154 --bpc-log-level 1 \
--bpc-attrib-new -e /usr/bin/ssh\ -l\ root --rsync-path=/usr/bin/rsync --super --recursive \
--protect-args --numeric-ids --perms --owner --group -D --times --links --hard-links --delete \
--delete-excluded --partial --log-format=log:\ %o\ %i\ %B\ %8U,%8G\ %9l\ %f%L \
--stats --checksum-seed=32761 --bwlimit=5000 --checksum --timeout=72000 \
--exclude=/tmp/\* --exclude=/var/tmp/\* --exclude=/proc/\* --exclude=/sys/\* \
--exclude=/dev/\* --exclude=tmp --exclude=/var/cache/apt/\* --exclude=/var/lib/mysql/\* \
--exclude=/var/lib/ureadahead/debugfs --exclude=/var/lib/tumgreyspf/\* --exclude=no-backup \
--exclude=temp --exclude=/var/cache/swap --exclude=/var/tmp/swap --exclude=/mnt \
--exclude=/proxmox --exclude=swap\[0-9\]\*.raw --exclude=/var/backups/confluence \
--exclude=/run/sr-mount --exclude=/var/cache/swap\* --exclude=/var/lib/vz management.mydomain.de:/ /

00:00:01 ECDSA host key for IP address '1.2.3.4' not in list of known hosts.
00:01:29 Xfer PIDs are now 1339211,1340835
00:00:00 xferPids 1339211,1340835
00:00:00 xferPids 1339211,1340835
00:00:00 __bpc_progress_fileCnt__ 1
00:01:17     new    recv cd+++++++++ rwxr-xr-x        0,       0      4096 .
00:00:46 __bpc_progress_fileCnt__ 21
00:00:00 __bpc_progress_fileCnt__ 41
--
00:00:00     new    recv cd+++++++++ rwxrwxr-x      999,     121      4096 backup/Check_MK-management-mydomain-default-complete
00:00:00     same   recv >f..tpog... rw-r--r--      999,    1001       514 backup/Check_MK-management-mydomain-default-complete/mkbackup.info
00:01:57     same   recv >f..tpog... rw-r--r--      999,    1001 10013048449 backup/Check_MK-management-mydomain-default-complete/site-mydomain.tar.gz
00:00:00     new    recv cd+++++++++ rwxr-xr-x        0,       0      4096 bin
00:00:00     new    recv cd+++++++++ rwxr-xr-x        0,       0      3072 boot

Ansonsten müssen für Windows die Ausschlüsse korrekt sein. pagefile.sys will man nicht unbedingt mitsichern. Ansonsten habe ich jetzt das Windows Verzeichnis auch mal ausgeschlossen. Das braucht man üblicherweise gar nicht. Mit cygwin/rsyncd wäre der Ausschluss da cygdrive/c/Windows/*.

Ich habe jetzt die Windows-VM, die ich mit rsnapshot sichere auch nochmal in BackupPC eingetragen. Die VM hat ca. 100K Dateien und 50 GB benutzten Speicherplatz.

Mir fällt dabei auf, dass die Vollbackups immer sehr lang und ähnlich lang dauern und dass die inkrementellen Backups sehr schnell gehen. Bei Linux ist das anders. Wenn sich kaum etwas geändert hat und auch die Anzahl der Dateien nicht all zu hoch ist (Ich wage mal eine Daumenpeilung von vielleicht 500.000 Dateien), dann geht bei Linux sowohl Vollbackup als auch inkrementelles Backup gleich schnell.

Bei der Windows VM sieht das bei mir aber so aus:

Code: Alles auswählen

ID     Typ           gefüllt    Level   Startzeit          Dauer/Min   Alter/Tage
10 	voll 	          ja 	0 	2024-06-25 18:17 	105.2 	0.1 	
	
9 	inkrementell 	nein 	1 	2024-06-25 18:10 	5.9 	0.1 		
8 	inkrementell 	nein 	1 	2024-06-25 18:08 	0.6 	0.1 		
7 	inkrementell 	nein 	1 	2024-06-25 17:43 	6.1 	0.2 		
6 	voll      	ja 	0 	2024-06-25 08:18 	145.0 	0.5 	
	
5 	inkrementell 	nein 	1 	2024-06-25 08:11 	4.2 	0.6 		
4 	inkrementell 	nein 	1 	2024-06-24 22:49 	2.5 	0.9 		
2 	inkrementell 	nein 	1 	2024-06-24 21:39 	2.9 	1.0 		
0 	voll      	ja 	0 	2024-06-24 17:38 	113.2 	1.2
... und das ist eine Windows VM die mehr oder weniger vor sich hin idled.

Antworten