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

Pet*_*r.O 5 filesystems io hardware corruption

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

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

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

现在,所有这一切的要点是:删除此文件会/可能会导致其他文件中的数据丢失,看到文件系统可以感知它比实际大得多......文件系统是ext4..

我可以使用rsync异常跳过它,但我对删除它会发生什么特别感兴趣。

更新:目标和源都是 ext4

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

另外,根据man rsync,建议的-S选项是处理稀疏文件有效,不正确的,这样建议,我认为即使我没有使用-S它应该在任何情况下精确复制稀疏文件:它没有,甚至如果它是一个稀疏文件,则 60.0 Peta Bytes 似乎肯定(?)是文件系统中的错误,某处......这是我主要关心的问题:如果文件系统中存在故障,可以删除它文件对其他文件有影响吗?

更具体地说:因为它写入了 13 GB 的数据,而且还在不断攀升!当我取消它时,它是否也可以删除 13 GB - 60 PB 的数据?

Gil*_*il' 4

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

我的建议是:

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