我使用tar
(via subprocess
) 在 python 中编写了一个备份脚本来对我的文件进行增量备份。由于一些完整备份相当大(例如我的图片文件夹)并且需要几个小时才能完成(通过网络到我的 NAS),我担心在服务器/PC 关闭/重新启动期间会发生什么备份。
我猜脚本会在关机/重启时收到一个 TERM 信号。是否tar
优雅地处理增量备份的中断,以便下一次调用tar
将成功添加所有丢失的文件,而不是重新传输所有以前的文件?
如果没有,这对我的 tar 文件和 tar 使用的快照文件(带有--listed-incremental
选项)意味着什么?
我使用的确切命令是:
tar -vcpzf <target_file> --no-check-device -g <target_snapshot_file> <dir_to_backup>
注意:在我的 PC 上,我计划通过 anacron 运行脚本,但它会在执行时检查备份是否到期。
由于
tar
不包含索引,您的输出 tar 文件将被截断(“存档过早结束”)但仍然可用;然而,由于快照文件是在归档过程结束时生成的,所以它将是空的。所以你的下一个增量实际上将是一个完整的备份。