文件大小 60.0 PB 是错误的。删除会导致数据丢失吗?

文件大小 60.0 PB 是错误的。删除会导致数据丢失吗?

在使用 备份一些数据(200 GB 主目录)时rsync,我遇到了特定文件的 I/0 错误,之后同步继续“正常”使用其备份。问题源文件显示文件大小为 72 字节。

我取消了 同步,并再次运行相同的命令。这次,同一个文件显示正在传输数据。很多数据...还有更多数据,还有更多...我检查了目标文件的大小,最大为 13 GB!所以我用 Ctrl-c 取消同步

60.0 PB在 Nautilus 中再次检查源文件大小时,它在 500 GB 驱动器上 显示大小(Peta 字节!)。

现在,这一切的要点是:删除该文件是否会导致其他文件中的数据丢失,因为文件系统可以认为它比实际大小大得多......文件系统是ext4..

我可以跳过它同步例外,但我特别感兴趣的是如果删除它会发生什么。

更新:目标和源都是ext4

关于它是稀疏文件的建议:如果它是稀疏文件,为什么它会从一分钟到下一分钟显示不同的大小?该文件当时肯定(?)没有被使用。它是一个~/.macromedia/Flash_Player/#SharedObjects/someting-or-other.sol文件,其中有许多更多这样的.sol该目录中的文件..而且它确实在第一次通过时显示了 I/0 错误。

此外,根据man rsync,建议的-S选项是处理稀疏文件有效率的, 不是适当地,所以这对我来说,即使我没有使用-S它,在任何一种情况下都应该准确地复制稀疏文件:它没有,即使它是一个稀疏文件,60.0 Peta 字节似乎肯定是(?)是文件系统中某处的错误......这是我主要关心的问题:如果文件系统中存在故障,删除该文件是否会对其他文件产生影响?

更具体地说:它写入了 13 GB 的数据,并且正在攀升!当我取消它时,删除时是否会同时删除 13 GB - 60 PB 的数据?

答案1

看起来源文件系统已损坏,通常是由于内核错误或 RAM 损坏(损坏的磁盘更有可能导致无法读取的文件而不是损坏的数据)。至此,所有的赌注都落空了。但是,如果损坏非常局部,则只有一个文件的 inode 损坏,其他文件未损坏,因此您可以安全地删除该文件。请注意,无法检验此假设。

我的建议是:

  1. 进行 RAM 测试,或将磁盘插入另一台机器。
  2. 确保您已备份所有数据。
  3. 如果可能的话,使用 SMART 检查磁盘的运行状况。
  4. 跑步fsck
  5. 如果磁盘仍然完好,请继续使用它。

答案2

它是稀疏文件。您应该考虑使用-S,以便尽可能正确地处理文件。

答案3

这很可能是一个稀疏文件。 (如果不是,开始运行现在!) 没有实际上占据了所有这些空间,它有洞。也许是一个大洞。

从目标端删除它rsync,然后添加-S(稀疏)选项以rsync确保它识别和处理稀疏文件。

目标文件系统类型应该支持稀疏文件也。 (简短版本:ext[234]可以,NTFS 可以,FAT 不行)

相关内容