在外部硬盘上使用压缩的 NTFS 文件系统是一个好主意吗?

在外部硬盘上使用压缩的 NTFS 文件系统是一个好主意吗?

我正在考虑在外部 USB 硬盘上使用压缩 NTFS。它应该仅用于备份。

  • 可以从 Linux 访问它吗?
  • 它可靠吗?
  • 根据微软它比普通文件系统慢。考虑到传输速率(30MB/s)和处理器(2.8 GHz Phenom II X4),我认为情况可能恰恰相反。您觉得呢?
  • 根据这个问题并非所有文件都会被压缩。如何避免这种情况?

答案1

1) 是的,可以从 Liunx 访问它。正如其他人所解释的那样,ntfs-3g 能够处理压缩的 ntfs。

2)可靠性:ntfs 中已经存在压缩功能很长时间了(自 Windows NT 以来,参见http://www.ntfs.com/ntfs-compressed.htm)。我没有看到 Windows 上有任何可靠性问题。我不太确定非 Windows 实现(例如 Linux)。如果您唯一关心的是在 Linux 上读取数据,那么这不会造成可靠性问题(无论如何,在恢复备份时以只读方式挂载是个好主意)。

此外,数据在簇级别进行压缩,通常为 4 kiB。磁盘的物理损坏只会影响单个簇,而不会影响整个文件。在这方面,压缩的 ntfs 应该与非压缩的一样可靠。

3) 性能:您引用的知识库文章称,性能可能会受到影响服务器系统,其中 CPU 已经饱和。在具有您描述的当前 CPU 的桌面系统上,使用压缩的 ntfs 进行备份不会对性能产生任何重大影响。相反,如果您存储可压缩数据,您实际上可能会获得性能,因为您的 I/O 更少。如果接口(USB 2.0)与 CPU 相比速度较慢,则尤其如此。我猜您的 CPU 应该能够轻松地使 USB 2.0 链路饱和,从而写入或读取压缩的 ntfs。

4)如果为整个文件系统设置了压缩标志,则不应该出现未压缩的移动文件的问题。

答案2

  1. 我认为它可以从 Linux 访问,但我不确定。

  2. 什么意义上的可靠?数据更容易损坏,但我不确定你的意思是不是这个。

  3. 从处理器角度看,它较慢,但从 I/O 角度看,它较快。如果您的处理器比磁盘快得多,那么读取较少的数据但进行一些处理可能是值得的,而不是读取大文件但避免后处理。

  4. 您无法避免这种情况,这取决于应用程序的编程方式。我记得在 Windows 中看到过一个与此相关的设置,但我认为它不能满足您的需要——如果事实证明它可以,我会更新它。

答案3

  1. ntfs-3g驱动程序支持读取、附加和(最近)修改压缩文件。

    目前所有 ntfs-3g 版本均支持读取压缩文件。从 ntfs-3g-2009.11.14 开始,支持创建新的压缩文件、清除内容以及将数据附加到现有压缩文件。从 ntfs-3g-2010.8.8 开始,支持通过覆盖现有数据(或现有漏洞)来修改现有压缩文件。

    NTFS-3G 高级:数据压缩

  2. 该文件系统与常见的 Linux 文件系统 ext3/ext4 一样可靠。

    司机ntfs-3g把一切都处理得很好。(可能在修改压缩文件时仍然存在一些错误;正如上面的引用所说,它只在2010.8.8版本中添加。)

  3. (没有答案)

  4. 如果这是由程序在其他地方创建未压缩的文件并稍后将其移动到预定位置而导致的,解决方法很简单:重新启用这些文件的压缩。

相关内容