在 tar 归档操作期间,tar -cvf archive.tar source
报告错误的生成的 tar 归档是否file changed as we read it
仍然包含报告错误的源文件的“某些版本”,还是完全放弃归档该源文件并继续?
答案1
tar
是为了磁带存档并且它是基于流的。tar
无法向后删除已经写入的内容。因此,该消息是告诉您存档中的内容可能不一致,因为它在写入时发生了变化。
发生的情况是,对于每个文件,tar
写入一个标头,其中包括文件的路径、元数据(所有权、权限、时间...)和大小(n字节),然后继续转储那些n字节通过从文件中读取它。如果文件的大小在tar
转储其内容时发生变化,tar
则无法返回并更改标题说,不,毕竟大小没有改变n但p。它所能做的就是将内容截断为n字节如果p大于n如果较小,则用零填充。
在这两种情况下,您都会收到错误消息。