切丝:不适用于日志FS?

切丝文件说切丝是“不保证有效”(见底部)。 所以,如果我在我的Ext3文件系统或Raid上撕下一个文件,会发生什么? 我是否撕碎部分文件? 它有时会把整个事情切碎,有时不切碎? 它可以切碎其他的东西? 它只是撕碎文件头?

小心:请注意,碎片依赖于一个非常重要的假设:文件系统覆盖数据到位。 这是做事的传统方式,但许多现代文件系统devise不能满足这个假设。 以下是碎片无效的文件系统示例,或者不能保证在所有文件系统模式下都有效:

在ext3文件系统的情况下,上述免责声明仅适用于(数据=日记模式),除了元数据之外还logging文件数据。 在数据=有序(默认)和数据=写回模式下,碎片工作如常。 Ext3日志logging模式可以通过在/ etc / fstab文件中为特定文件系统的mount选项添加data = something选项来更改,如装载手册页(man mount)中所述。

Solutions Collecting From Web of "切丝:不适用于日志FS?"

所有碎片确实是覆盖,刷新,检查成功,并重复。 它完全不知道是否覆盖文件实际上导致包含原始数据的块被覆盖。 这是因为不知道底层文件系统的非标准事情,它不能。

所以,日志记录文件系统不会覆盖原来的块,因为这会阻止他们从变化被写入的错误中清除干净地恢复。 如果数据被记录,那么碎片的每个通过可能被写入到磁盘上的新位置,在这种情况下,没有任何东西被撕碎。

RAID文件系统(取决于RAID模式)可能不会覆盖原始块的所有副本。 如果存在冗余,则可能会撕碎一个磁盘,而不是其他磁盘,或者您可能会发现不同的传递会影响不同的磁盘,从而使每个磁盘部分碎片。

在任何文件系统上,磁盘硬件本身可能只是碰巧检测到错误(或者在闪存的情况下,即使没有错误也应用损耗平衡),并将逻辑块重新映射到不同的物理块,使得原始标记错误(或未使用),但从未被覆盖。

压缩文件系统可能不会覆盖原始块,因为碎片覆盖的数据在每次传递时都是随机的或极其可压缩的,并且可能导致文件从根本上改变其压缩大小,因此被重新定位。 NTFS将小文件存储在MFT中,并且在将文件大小整理为一个块的倍数时,其第一次“覆盖”通常会导致文件被重新定位到新的位置,然后将其毫无意义地撕碎, MFT插槽不变。

Shred不能检测到任何这些情况(除非你有一个特殊的实现,直接访问你的fs和块驱动程序 – 我不知道是否真的存在这样的事情)。 这就是为什么在整个磁盘上使用它比在文件系统上更可靠的原因。

切丝在其他文件的意义上从不撕碎“其他东西”。 在上面的一些情况下,它将先前未分配的块而不是包含数据的块分解。 它也不会撕碎文件系统中的任何元数据(我猜这是你的意思是“文件头”)。 -u选项尝试覆盖文件名,通过重命名为相同长度的新名称,然后在删除文件之前,一次缩短一个字符,最多为1个字符。 如果您指定了-v,则可以看到此操作。

其他答案已经做了很好的解释,为什么shred可能无法正常工作。

这可以概括为:

碎片只适用于分区,而不是单个文件

正如其他答案中所解释的那样,如果您将单个文件切碎:

  • 不能保证实际的数据被真正的覆盖,因为文件系统可以将写入同一文件发送到磁盘上的不同位置
  • 不能保证fs不会在其他地方创建数据副本
  • fs甚至可能会决定“优化”你的写入,因为你正在重复写同一个文件(同步应该是防止这个,但是再次:不能保证)

但是,即使你知道你的文件系统没有做出上述任何令人讨厌的事情,也必须考虑到许多应用程序会自动创建文件数据的副本:

  • 崩溃恢复文件的文字处理器,编辑(如VIM)等将定期写入
  • 文件管理器中的缩略图/预览文件(有时甚至是非图像文件)
  • 许多应用程序使用的临时文件

因此,在检查每个用来处理数据的二进制文件的情况下,它可能已经被复制到右侧,左侧和中间而不知道。 唯一现实的方法是总是粉碎完整的分区(或磁盘)。

担心的是数据可能存在于磁盘上的多个位置。 当数据存在于一个位置时,碎片可以确定性地“擦除”该信息。 但是,日记或其他高级文件系统的文件系统可能会将文件的数据暂时存储在磁盘上的多个位置。 撕碎 – 在事实之后 – 无法知道这一点,也无法知道数据可能已暂时写入磁盘的位置。 因此,它无法擦除或覆盖这些磁盘扇区。

想象一下:您可以在日志文件系统上将文件写入磁盘,该文件系统不仅记录元数据,还记录文件数据。 文件数据被临时写入日志,然后写入其最终位置。 现在你在文件上使用Shred。 数据写入的最终位置可以用碎片安全地覆盖。 但是,碎片必须有某种方式来保证日志中临时包含文件内容的扇区也被覆盖​​,以保证您的文件是不可恢复的。 设想一个文件系统,其中杂志甚至不在固定位置或固定长度。

如果你正在使用碎片,那么你正试图确保你的数据不可能被重建。 切丝的作者是诚实的,有一些他们无法控制的条件,他们不能作出这个保证。