Mil*_*vić 4 tar backup concurrency
我要问类似的问题本。
在您使用tar
和备份目录的情况下
正在添加新文件/目录
当前文件/目录正在被编辑和删除
你能期待安全的结果吗?
通过安全结果,我的意思是:
tar
不会在源目录/子目录上搞砸tar
将添加到档案中,因为它在构建档案的那一刻发现不。
Unix(不是 tar)会做的一件事:
记住,你可以(其实用tar来读取或写入到一个管道牛逼的tar
手段磁带,当世界年轻时即是),所以焦油
以上对于基本的tar -c
.
tar -u
将添加新文件。tar --diff
和tar --delete
tar的组合来同步 tar 文件和目录。\n\n\n1. tar 不会搞砸源目录/子目录上的某些内容
\n
确实如此,除非你把更新访问时间算作搞砸了。除此之外,tar 不会更改源代码树中的任何内容。
\n\n\n\n\n2. tar 将添加到存档中,因为它是在构建存档时找到的
\n
确实,对于 \xe2\x80\x9d 时刻的 \xe2\x80\x9d 的某个值。如果在 tar 读取源代码树时发生更改,则归档中包含的内容在某种程度上是不可预测的。特别是,如果 tar 读取文件时文件发生更改,则不能保证 tar 会像在某个时刻那样写入该文件的副本。例如,可以有:
\n\nfoo
x934095foo
,在单个写入操作中更改字节 4095\xe2\x80\x934096。foo
x938191那么存档中的内容foo
既不是旧内容也不是新内容,而是两者的混合。另一个例子是,如果在 tar 读取源树时重命名文件,tar 可能会完全跳过它。
\n\n\n3. 即使发生了所描述的更改,也会发出成功信号
\n
不,不一定。如果 tar 在读取源时检测到源已更改,它可能会抱怨并返回失败状态。特别是,tar 在写入内容之前需要将文件的大小写入存档,因此它首先读取每个源文件的大小。如果它在达到记录大小之前到达文件末尾,则没有明显的方法可以恢复,因此任何 tar 实现至少在这种情况下都会抱怨。
\n\n为了安全地进行备份,请使用文件系统或卷级别的工具来制作快照并备份快照。
\n