Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 焦油:“;文件在我们阅读时发生了更改";发生在大型链接文件中_Linux_Tar - Fatal编程技术网

Linux 焦油:“;文件在我们阅读时发生了更改";发生在大型链接文件中

Linux 焦油:“;文件在我们阅读时发生了更改";发生在大型链接文件中,linux,tar,Linux,Tar,我使用中描述的方法使用tar传输文件,有时会出现以下错误: tar: ./file.large: file changed as we read it tar: Error exit delayed from previous errors 执行的命令如下所示: %焦油-C somedir-chf-。|焦油-xf- 这取决于此设置中的文件大小(将错误情况修剪到最小值后): 此错误显然与传输的文件是指向被覆盖文件的符号链接这一事实有关,但是如果文件很小(几个字节就足够了),则执行tar命令时不会

我使用中描述的方法使用
tar
传输文件,有时会出现以下错误:

tar: ./file.large: file changed as we read it
tar: Error exit delayed from previous errors
执行的命令如下所示:

%焦油-C somedir-chf-。|焦油-xf-

这取决于此设置中的文件大小(将错误情况修剪到最小值后):

此错误显然与传输的文件是指向被覆盖文件的符号链接这一事实有关,但是如果文件很小(几个字节就足够了),则执行
tar
命令时不会出现任何错误

我需要的是被取消引用的符号链接覆盖的原始文件(在我的原始应用程序中,我也在使用--backup in the second
tar
)或要跳过的链接文件,但我找不到执行后者的方法

是否有控制此行为的设置或解决方法


我在RHEL 5.3(Linux 2.6.18-128.el5 x86_64)上使用tar 1.13.25。

您绝对确定链接引用的目标文件实际上没有更改吗?如果它是某种类型的日志文件,则可能有一个进程在运行tar时一直附加到它。该文件不是日志文件或输出文件,实际上是一个未更改的输入文件。我的猜测是,文件是由tar本身改变的,并且由于某种原因,当文件很小时,这不是问题。
% tree -s -A
.
├── [ 29980317]  file.large
└── [     4096]  somedir
    └── [       13]  file.large -> ../file.large