HFS+ 是否适合跨 Mac 和 Linux(有时也适用于 Windows)访问

HFS+ 是否适合跨 Mac 和 Linux(有时也适用于 Windows)访问

我 (也) 使用外部硬盘进行备份。对于完整备份,我直接通过 USB 将它们连接到 Mac,但大多数时候它们 (仍然通过 USB) 连接到 Linux (Raspberry Pi) 服务器,在那里我可以访问文件或使用 rsync 进行增量备份。

这意味着我需要从 Mac 快速、本机访问,以及从 Linux 相对较快的访问。

每两到三年我需要从 Windows 访问一些东西,Samba 绝对足够好。

我还注意到 Linux 上 fuse 支持的 NTFS 存在速度问题。

这只是我的看法吗?

在这种情况下,使用 HFS+ 是否存在实质性的反驳意见?

或者我使用 NTFS 会更好?

答案1

Linux 对 HFS+ 的支持充其量只能算是一般。理论上,它受支持,但如果不进行大量手动操作,文件系统检查基本上是不存在的,而且如果文件系统没有完全关闭,它有时会出现问题。性能也不是特别好,而且驱动程序使用不广泛,这意味着它更有可能存在未被发现的错误。我不确定它在 Windows 上的支持程度如何,因为我从未在那里处理过它。

考虑到所有这些,我想说这可能不是一个很好的选择,除非你能 100% 保证硬件永远不会出现导致文件系统出现错误的问题。


对于这种事情,NTFS 有自己的问题。在 Linux 上,你基本上需要 FUSE,而 macOS 本身并不支持它。我还没有在 macOS 上尝试过,但如果你处理的是快速存储设备,Linux FUSE 模块并不糟糕(我在 SSD 上使用它时没有出现明显的性能问题,但我不太愿意在旋转介质或闪存驱动器上使用它)。鉴于 Windows 支持对你来说不是首要任务,我会去别处看看。


这就留下了一些其他的选择,其中许多都只是平庸之作:

  • FAT32:macOS 和 Linux 均原生支持该文件系统,只要您一次性写入整个文件而不是进行就地文件更新,其性能就很不错,而且在 Windows 上也可以轻松使用。但其最大的缺点是,与大多数其他文件系统相比,其文件大小限制非常低。不过,大多数设计良好的备份软件都可以毫无问题地处理这一事实(因为它会将所有内容存档到一个文件中,然后可以将其拆分为多个较小的文件以保持在文件大小限制以下),或者您可以在创建文件系统时增加簇大小以增加最大文件大小,但代价是浪费更多空间。它也不会保留大多数 UNIX 属性,不过您可以通过使用存档文件而不是平面文件副本来解决这个问题。
  • UDF:这是 DVD 上使用的文件系统格式。它还支持更传统的块存储设备(如硬盘),并且 Linux 和 macOS 都原生支持它。性能不错但并不出色。就像 FAT32 一样,它不会保留大多数 UNIX 属性,您可以用同样的方式解决这个问题。还有一个问题是 Linux 驱动程序有点问题,而且 Linux 几乎没有针对 UDF 的文件系统恢复选项。
  • UFS:macOS 和 Linux 均提供有限的原生支持,在典型的备份工作负载方面均具有不错的性能。在这两种情况下,用户空间中使用它的工具都有些有限,并且预计不久的将来 macOS 可能会停止对 UFS 的支持(如果在最新的 macOS 版本中尚未删除该支持)。
  • ext2:Linux 上的原生支持和出色性能,在 macOS 上需要特殊驱动程序,但性能不错。如果您通常使用 Linux 上的磁盘,这可能是您的最佳选择,因为它会在您大多数时间使用的系统上为您提供适当的文件系统恢复支持。

相关内容