Benchmark of backup tools
https://github.com/topics/backup
- attic
- nackup
- backupPC
- borg
- bup
- duplicati
- duplicacy
- duplicity
- kopia
- linux-timemachine
- obnam
- rdiff-backup
- rdedup
- restic
- urbackup
- rsync-time-backup
- zbackup
before changed
1011M RDIFF-TEST
124M RESTIC-TEST
after changed
912M RDIFF-TEST
128M RESTIC-TEST
show backups
# rdiff-backup -l RDIFF-TEST/
Found 1 increments:
increments.2023-01-07T01:38:44+08:00.dir Sat Jan 7 01:38:44 2023
Current mirror: Sat Jan 7 01:40:39 2023
#restic -p sha1.checksum -r RESTIC-TEST/ snapshots
repository 6d6ece4e opened successfully, password is correct
ID Time Host Tags Paths
----------------------------------------------------------------------------------------
351a6050 2023-01-07 01:39:10 ubuntu-nas /mnt/program/00.temp/DIR-FOR-TEST
57eedfb5 2023-01-07 01:40:47 ubuntu-nas /mnt/program/00.temp/DIR-FOR-TEST
----------------------------------------------------------------------------------------
2 snapshots
show changed files
#rdiff-backup --compare DIR-FOR-TEST/ RDIFF-TEST/
changed: .
deleted: 100M-for-move-test.bin
deleted: add-file.txt
deleted: changed.txt
new: delete
new: delete/100M-for-delete-test.bin
changed: edit/100M-for-edit-test.bin
changed: move
new: move/100M-for-move-test.bin
new: rename-dir
new: rename-dir/100M-for-rename-dir-test.bin
deleted: rename-dir-2
deleted: rename-dir-2/100M-for-rename-dir-test.bin
changed: rename-file
deleted: rename-file/100M-for-rename-file-test-2.bin
new: rename-file/100M-for-rename-file-test.bin
# restic -p sha1.checksum diff 351a6050 57eedfb5 -r RESTIC-TEST/
repository 6d6ece4e opened successfully, password is correct
comparing snapshot 351a6050 to 57eedfb5:
+ /mnt/program/00.temp/DIR-FOR-TEST/100M-for-move-test.bin
+ /mnt/program/00.temp/DIR-FOR-TEST/add-file.txt
+ /mnt/program/00.temp/DIR-FOR-TEST/changed.txt
- /mnt/program/00.temp/DIR-FOR-TEST/delete/
- /mnt/program/00.temp/DIR-FOR-TEST/delete/100M-for-delete-test.bin
M /mnt/program/00.temp/DIR-FOR-TEST/edit/100M-for-edit-test.bin
- /mnt/program/00.temp/DIR-FOR-TEST/move/100M-for-move-test.bin
- /mnt/program/00.temp/DIR-FOR-TEST/rename-dir/
- /mnt/program/00.temp/DIR-FOR-TEST/rename-dir/100M-for-rename-dir-test.bin
+ /mnt/program/00.temp/DIR-FOR-TEST/rename-dir-2/
+ /mnt/program/00.temp/DIR-FOR-TEST/rename-dir-2/100M-for-rename-dir-test.bin
+ /mnt/program/00.temp/DIR-FOR-TEST/rename-file/100M-for-rename-file-test-2.bin
- /mnt/program/00.temp/DIR-FOR-TEST/rename-file/100M-for-rename-file-test.bin
Files: 5 new, 4 removed, 1 changed
Dirs: 1 new, 2 removed
Others: 0 new, 0 removed
Data Blobs: 3 new, 2 removed
Tree Blobs: 7 new, 8 removed
Added: 4.009 MiB
Removed: 8.009 MiB
verify
#rdiff-backup --verify RDIFF-TEST/
Every file verified successfully.
#restic -p sha1.checksum -r RESTIC-TEST/ check
using temporary cache in /tmp/restic-check-cache-001259474
repository 6d6ece4e opened successfully, password is correct
created new cache in /tmp/restic-check-cache-001259474
create exclusive lock for repository
load indexes
check all packs
check snapshots, trees and blobs
no errors were found
show stats
#restic -p sha1.checksum stats -r RESTIC-TEST/
repository 6d6ece4e opened successfully, password is correct
scanning...
Stats for all snapshots in restore-size mode:
Total File Count: 42
Total Size: 1.875 GiB
find file in all backups
#restic -p sha1.checksum -r RESTIC-TEST/ find *txt
repository 6d6ece4e opened successfully, password is correct
Found matching entries in snapshot 351a6050
/mnt/program/00.temp/DIR-FOR-TEST/string.txt
Found matching entries in snapshot 57eedfb5
/mnt/program/00.temp/DIR-FOR-TEST/add-file.txt
/mnt/program/00.temp/DIR-FOR-TEST/changed.txt
/mnt/program/00.temp/DIR-FOR-TEST/string.txt
list all files (and dirs)
#restic -p sha1.checksum -r RESTIC-TEST/ ls 57eedfb5
repository 6d6ece4e opened successfully, password is correct
snapshot 57eedfb5 of [/mnt/program/00.temp/DIR-FOR-TEST] filtered by [] at 2023-01-07 01:40:47.05596533 +0800 CST):
/mnt
/mnt/program
/mnt/program/00.temp
/mnt/program/00.temp/DIR-FOR-TEST
/mnt/program/00.temp/DIR-FOR-TEST/100M-for-move-test.bin
/mnt/program/00.temp/DIR-FOR-TEST/100M.bin1
/mnt/program/00.temp/DIR-FOR-TEST/100M.bin4
/mnt/program/00.temp/DIR-FOR-TEST/add-file.txt
/mnt/program/00.temp/DIR-FOR-TEST/changed.txt
/mnt/program/00.temp/DIR-FOR-TEST/duplicate
/mnt/program/00.temp/DIR-FOR-TEST/duplicate/100M.bin1
/mnt/program/00.temp/DIR-FOR-TEST/duplicate/100M.bin2
/mnt/program/00.temp/DIR-FOR-TEST/duplicate/100M.bin3
/mnt/program/00.temp/DIR-FOR-TEST/edit
/mnt/program/00.temp/DIR-FOR-TEST/edit/100M-for-edit-test.bin
/mnt/program/00.temp/DIR-FOR-TEST/move
/mnt/program/00.temp/DIR-FOR-TEST/rename-dir-2
/mnt/program/00.temp/DIR-FOR-TEST/rename-dir-2/100M-for-rename-dir-test.bin
/mnt/program/00.temp/DIR-FOR-TEST/rename-file
/mnt/program/00.temp/DIR-FOR-TEST/rename-file/100M-for-rename-file-test-2.bin
/mnt/program/00.temp/DIR-FOR-TEST/string.txt
mount as filesystem
restic -p sha1.checksum -r RESTIC-TEST/ mount restic-mount