为了备份我的数据,我rdiff-backup
在 Ubuntu 20.10 上使用 (2.0.5)。数据量只有 127 GB,但有 80k 个文件/17k 个文件夹(主要是源代码存储库、照片)。
我发现的问题是,rdiff-backup 在添加新文件时似乎非常慢。我编写了一个 bash 脚本来演示这一点(见下文)。
该脚本的作用是:
- 生成1000个空文件
- 进行初始备份
- 生成另外 1000 个空文件
- 再做一次备份
初始备份大约需要 1 秒,而第二次备份则需要 7 秒(详细结果见下文)。这听起来并不多,但根据我的实际数据,我最终花了几个小时来备份很少的新文件。
让我困惑的是,似乎只有“实际”时间会爆炸。rdiff-backup 是否会卡在其他进程中?
我在内部 ext4 SATA SSD 上运行该示例。
脚本:
#!/bin/bash
mkdir src
mkdir dest
files=1000
printf "Creating some dummy files.\n"
for (( i=1; i<=$files; i++ ))
do
touch "src/$i.txt"
done
printf "First run."
time rdiff-backup src/ dest/
printf "\n"
sleep 1
printf "Second run, nothing changed."
time rdiff-backup src/ dest/
printf "\n"
sleep 1
printf "Creating some more dummy files.\n"
for (( i=$files+1; i<=$files*2; i++ ))
do
touch "src/$i.txt"
done
printf "Third run, adding new files to backup."
time rdiff-backup src/ dest/
printf "\n"
sleep 1
printf "Forth run, nothing changed."
time rdiff-backup src/ dest/
输出:
Creating some dummy files.
First run.
real 0m1,076s
user 0m0,869s
sys 0m0,157s
Second run, nothing changed.
real 0m0,511s
user 0m0,419s
sys 0m0,037s
Creating some more dummy files.
Third run, adding new files to backup.
real 0m7,460s <--- 7 times longer!
user 0m1,374s
sys 0m0,310s
Forth run, nothing changed.
real 0m0,747s
user 0m0,645s
sys 0m0,053s