跨平台文件系统

Con*_*ole 92 linux mac storage filesystems cross-platform

我希望我的外部驱动器可以从 Linux、Mac OS X 和 Windows 读取和写入。

FAT32 可以工作,但 4 GB 的文件大小限制是这些天的一个阻碍。有没有其他选择?

ale*_*lex 47

正如突破所说,使用NTFS。在 Mac OS 和 Linux 中,您可以使用NTFS-3G启用对 NTFS 分区的读/写。

在 OS X 上,NTFS-3G 也可以通过Homebrew免费安装brew install ntfs-3g。您还需要Fuse for OS X,仅此而已。

这些项目是免费、开源和成熟的。我在 Mac 上使用过这个设置,并且从 NTFS 分区访问数据没有问题。

  • 警告:并非所有操作都受 ntfs-3g 驱动程序支持。http://en.wikipedia.org/wiki/NTFS#Linux “由于内部 NTFS 结构的复杂性,内置的 2.6.14 内核驱动程序和 FUSE 驱动程序都不允许更改被认为不安全的卷,以避免腐败。” 我有幸体验到了这一点:我的 NTFS 驱动器曾经在运行过程中冻结。我终于拔掉它并重新连接它,从那时起ntfs-3g就不会再碰它了。我最终不得不将 NTFS 驱动器连接到 Windows 机器并启动,然后将其插回 Linux 机器,以使其正常工作。 (24认同)
  • 此外,除了三大类之外,NTFS 几乎不受支持或几乎不稳定。例如,OpenBSD 具有相当稳定的只读支持,但只写非常不稳定。我确定还有其他操作系统有同样的问题,因为它是一个专有的 FS (4认同)
  • 好吧,如果你认为 ntfs 格式都是逆向工程,它仍然非常稳定。当然,它可能仍然有一些怪癖。您是否丢失了任何数据? (3认同)
  • 不,幸运的是没有数据丢失。让我感到恼火的是,如果不先将驱动器连接到 Windows 主机,我就无法让驱动器工作。我希望我至少可以强制安装驱动器。从那以后,当我需要跨平台兼容性时,我又恢复使用 fat32,因为我发现 4GB 的限制更合适。但这只是我。不过,我会同意稳定性部分;使用 ntfs-3g 时,我从不担心数据损坏。 (3认同)

Mar*_*rco 42

UDF是候选人。它在 linux >= 2.6.31、Windows >= Vista、MacOS >= 9 和许多 BSD 上开箱即用。

注意: UDF 有不同的版本,并非在所有平台上都得到同等支持,请参阅Wikipedia - Compatibility

相关问题:在 U 盘上使用 UDF

  • 这对我来说似乎是最好的方法。它适用于 Windows、Linux 和 Mac。 (3认同)

Emm*_*Eff 16

简单回答是不。除了 FAT32 之外,这些操作系统没有最低的公分母。

通过最小公分母,我的意思是内置文件系统。对于附加组件,您要靠自己。

  • 如果您想将驱动器插入到以前未配置的任意计算器中,那么是否有可能的替代方案是一个有争议的问题。 (12认同)
  • UDF 是最小的公分母。除了嵌入式系统,当前所有的 PC 操作系统都内置了对 UDF 的支持 (4认同)

laj*_*tte 12

尝试exFAT,它可用于越来越多的操作系统。根据链接的维基百科文章(参见来源),有一个用于 linux 的开源内核模块正在开发中。OS X 从 10.6.5 开始支持它,Windows 从 Vista 开始支持它。有针对 oler Microsoft 操作系统的更新。

exFAT 支持大文件。

  • exFAT 在 Linux 系统上并不真正可用。 (7认同)
  • 实际上似乎 [exFAT 在 Linux 上具有读/写支持](http://apcmag.com/how-to-enable-exfat-in-ubuntu.htm)。您只是无法创建 exFAT 卷。但是我不知道支持有多好。至少 [它的开发人员说它仍处于测试阶段](http://code.google.com/p/exfat)。 (4认同)

Bre*_*ugh 10

那么你有两个解决方案。许多 Linux 发行版包括用于读取和写入 NTFS 驱动器的工具......

另一种方法是使用 Ext2。有一个Windows 实用程序可以将文件系统与 Windows 操作系统集成。我认为这将是您理想的解决方案:

它安装了一个纯内核模式文件系统驱动程序 Ext2fs.sys,它实际上扩展了 Windows 操作系统以包含 Ext2 文件系统。由于它与 Windows 的所有本机文件系统驱动程序(例如 Joliet/ISO CD-ROM 的 NTFS、FASTFAT 或 CDFS)一样在 Windows NT 操作系统核心的同一软件层上执行,因此所有应用程序都可以直接访问Ext2 卷。Ext2 卷获得驱动器号(例如 O:)。Ext2 卷的文件和目录出现在所有应用程序的文件对话框中。无需从 Ext2 卷复制文件或将文件复制到 Ext2 卷即可使用它们。

  • 如果可以并且愿意在目标机器上安装这些第三方工具,则是有效的解决方案。 (4认同)

Wil*_*ill 8

使用 NFS 和 Samba 将外部驱动器挂载到服务器。


pol*_*mon 5

FAT32 几乎可以在任何地方使用。

我挣扎于文件大小限制,按照今天的标准,它不再那么大了。由于 exFAT 在 Linux 上尚不可用,因此我一直在寻找替代品,而且很难找到合适的东西。

UDF 曾经是一个跨平台和跨媒体的文件系统,但它有点被遗忘了。有一个选项可以为硬盘驱动器格式化 UDF,这非常适合可移动驱动器,但根据我的经验,对 Windows 的支持很少,如果有的话。我不知道 Windows 7 是否支持蓝光光盘以外的 UDF 驱动器。

我决定将 NTFS 用于我的外部驱动器,这些驱动器需要插入 Windows 计算机以及 Linux 计算机。对于我的可移动驱动器,如果不仅在 Linux 计算机上使用,我主要使用 XFS。

同样的问题也适用于加密:我在 Linux 上使用 LUKS,它在 Windows 上有一些支持。与 LUKS 相比,TrueCrypt 不能很好地集成到 Linux 系统中,所以我选择了那个。


jim*_*ont 5

ZFS 是截至 2020 年广泛使用的流行现代操作系统的最佳选择。请参阅 OpenZFS 实现,其中包括对 OSX/macOS、Linux、FreeBSD 的支持,显然现在还支持 Windows:https: //en.wikipedia.org/wiki/ OpenZFS http://www.open-zfs.org/wiki/Main_Page

应该可以使用在不受支持的平台上具有设备访问权限的虚拟机,但这已不再是一个问题。

我在 Raspberry Pi 4、MacOS、Linux(包括 Ubuntu 20、Catalina 和之前的版本)上使用了带有加密功能的 zfs ssd。