如何在 Linux 中修复 tar 命令“错误:文件在读取时已更改” 您所在的位置:网站首页 aetime指令错误 如何在 Linux 中修复 tar 命令“错误:文件在读取时已更改”

如何在 Linux 中修复 tar 命令“错误:文件在读取时已更改”

2024-03-19 17:40| 来源: 网络整理| 查看: 265

如何在 Linux 中修复 tar 命令“错误:文件在读取时已更改”

tar命令是Linux系统中创建备份和归档文件的常用工具。然而,有时,在使用 tar 命令时,您可能会遇到“错误:我们读取时文件已更改”错误,这可能会令人沮丧并阻碍高效的系统运行。

在本文中,我们将探讨“错误:读取时文件已更改”错误、其原因以及修复该错误的解决方案。

了解“错误:文件在我们读取时已更改”错误

“错误:文件在读取时已更改”错误是在 Linux 系统中使用 tar 命令创建备份或存档时出现的常见错误。此错误通常表明 tar 命令正在尝试读取同时正在修改的文件。

有多种情况可能会触发此错误,例如在备份过程中修改文件或在备份过程中由另一个程序打开文件。此错误可能会对 tar 命令操作产生重大影响,导致备份或存档不完整。

修复“错误:文件在我们读取时已更改”错误

有多种解决方案可以修复在 Linux 系统中使用 tar 命令时出现的“错误:文件在读取时已更改”错误。

解决方案 1:使用 –ignore-failed-read 参数

一种解决方案是在使用 tar 命令时使用 –ignore-failed-read 参数。此选项指示 tar 命令忽略备份或归档过程中遇到的任何错误,从而允许备份或归档过程继续,尽管出现“错误:我们读取文件时已更改”错误。

注意:此解决方案可能会导致备份或存档不完整,从而导致数据丢失。

解决方案 2:使用 –exclude 选项

另一种解决方案是在使用 tar 命令时使用 -exclude 选项。此选项指示 tar 命令排除在备份或归档过程中正在修改的文件,从而防止发生“错误:文件在读取时已更改”错误。

该解决方案可以有效防止错误,但需要手动识别并排除备份过程中被修改的文件,这可能非常耗时。

解决方案 3:使用 –warning=no-file-changed 选项

第三种解决方案是在使用 tar 命令时使用 –warning=no-file-changed 选项。此选项指示 tar 命令将“错误:我们读取文件时已更改”错误视为警告而不是错误,从而允许备份或存档过程继续。

此解决方案可有效防止错误导致备份或归档过程停止,但也可能导致备份不完整。

避免“错误:文件在读取时已更改”错误的提示

此错误可能是由于 tar 命令本身归档的文件包含在生成的 tar 归档文件中而导致的。

让我们举个例子来更清楚:

tar cvf backup.tar .

发生错误的原因是 tar 命令正在尝试创建名为“backup.tar”的存档文件,该文件也包含在正在存档的文件列表中。这会导致 tar 命令将“backup.tar”解释为输入文件和输出文件,从而导致错误,因为文件在存档时被修改。

要解决该错误,必须确保输出 tar 文件不包含在正在归档的文件列表中。这可以通过更改输出文件的名称或位置,或者将其从 tar 命令的输入文件列表中排除来完成。这样,tar 命令就不会将输出文件解释为输入文件,从而避免错误。

结论


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有