我经常使用 Linux 和 Mac OS X,有时也必须使用 Windows。我需要在所有三个设备上使用闪存驱动器,并且我需要一个能够在所有三个设备上正常工作的文件系统。 ext 在 Mac 或 Windows 上都不起作用,HFS+ 在 Windows 上不起作用(或者在 Linux 上也不起作用),NTFS 在 Mac 上是只读的,而 FAT 在所有操作系统上都很糟糕。是否有一个文件系统可以在所有操作系统上正常工作?我希望它无需驱动程序或额外安装即可工作,因此可以在任何计算机上使用。
答案1
UDF是一名候选人。它可以在 linux >= 2.6.31、Windows >= Vista、MacOS >= 9 和许多 BSD 上开箱即用。
笔记:UDF 有不同的版本,并非所有平台都同等支持,请参阅维基百科 - 兼容性。
mkudffs
可以使用软件包中的工具在 Linux 上创建 UDF udftools
。
答案2
没有麻烦的话,使用 FAT32。没有其他兼容的可能性。 Linux 自版本 2.6.xy 以来不再有 NTFS 问题,但 Mac OS 却有...也许您可以在闪存上创建更多分区,但这实际上不是一个很好的解决方案。
其他解决方案:尝试想象您有 4GB 闪存。将其分成 2 个分区。 1) FAT32 带有免费软件便携式应用程序,可访问所有其他 FS 类型。 2) 通用分区,可以是您想要的任何分区 - NTFS、ReiserFS(如果您想要真正的安全性和加密)或其他分区。感谢闪存的第一个分区,您可以轻松地从任何操作系统读取/写入,因为您的程序存储在闪存的 FAT32 分区中。
更好的解决方案:忘记使用闪存驱动器。通过网络使用Dropbox或其他东西。它们是在计算机之间共享文件的最简单方法之一。
编辑:谢谢您的更正:让我在这里写一条评论:“最大大小取决于所选的簇大小。对于FAT32,簇大小的限制实际上是从2TB到16TB,对于FAT32,限制是512B到4KB(维基页面上也提到了)。 ”没错,请原谅我的错误。
谢谢你彼得夫
答案3
由于您已将其切入 OS X 和 Windows 开箱即用支持的文件系统,恐怕最不常见的标准是 FAT32。外FAT如果您可以放宽要求并接受使用 FUSE,那么这可能是一个选择 - 它受专利保护,因此直到 2029 年或微软以免版税方式授予专利(以先发生者为准)之前,它不会进入内核。
更新:微软公开发布了exFAT规范2019 年,exFAT 可作为内核驱动程序Linux 5.4+。有关更多信息,请参阅维基百科,微软博客。
另一方面,请记住,许多知情人士会认为 exFAT 为了简单性而牺牲了功能。因此,您将获得能够存储数据并跨各种操作系统工作的东西,但功能方面相当初级。
答案4
Windows、Mac 和 Linux 使用哪种文件系统?
快速总结:
外FAT在 SSD 上,簇大小为 8 KiB。 exFAT 在所有 3 个操作系统上都是本机读/写的,无需任何额外的安装、配置或工作。 8 KiB 的簇大小是速度和浪费空间之间的一个很好的权衡(研究我在这个答案底部绘制的图)。
您也可以考虑 NTFS,但 MacOS 需要额外的驱动程序才能在其上写入。请参阅我的答案底部的链接。
更多详情:
- 仅限 Linux:ext4
- 仅限 Windows:ntfs
- 仅限 MacO:apfs
- Linux 和 Windows:ntfs
- Mac 和 Windows:exFAT
- Linux 和 Mac:exFAT
- Windows、Mac 和 Linux:exFAT
长答案:
以下是我针对 Linux、Windows 和 Mac 所推荐的文件系统格式。
- 对于单一操作系统使用:
为了仅限Linux使用,包括在外部硬盘驱动器上,将文件系统格式化为外部4通过 gparted GUI。 EXT4 是一种 Linux 文件格式。这是我最常使用的,即使是在外部硬盘上,因为我是 Linux 的重度用户。
- 对于可选加密,请使用 LUKS,它可以通过 Gnome Disks GUI 进行配置。
为了仅限 Windows 使用,将文件系统格式化为ntfs通过 gparted GUI。
- 对于可选加密,请使用维拉密码容器存储在NTFS分区上。如果运行 NTFS 文件系统在Windows,您可以使用 VeraCrypt 加密整个磁盘,但这仅适用于使用此工具的 Windows。
为了仅限 MacOS 使用,将文件系统格式化为APFS(苹果文件系统)。这必须在 Mac 上通过 Mac 磁盘实用程序完成。此实用程序中有多种格式选项可用,如下所示,包括“APFS”、“APFS(加密)”、“APFS(区分大小写)”、“APFS(区分大小写,加密)”:
- 据我所知,目前任何操作系统上都没有功能齐全的 APFS 开源实现,正如 Apple 所希望的那样。他们希望他们的设备尽可能不兼容。不过,您可以在这里看到一些工具:超级用户:如何在Linux或Windows上挂载APFS?
- 对于可选加密,请在 MacOS 安全设置中打开文件库加密。
- 对于共享操作系统使用:
- 用于在之间共享文件Linux 和 Windows, 使用ntfs,通过 gparted GUI 格式化。 NTFS 是一种 Microsoft 文件格式,但 Linux(例如 Linux Ubuntu)完全支持对其进行读取和写入,无需额外配置。
- 对于可选加密,请使用维拉密码容器存储在NTFS分区上。
- 用于在之间共享文件Mac 和 Windows,Linux 和 Mac,Windows 和 Mac, 或者Windows、Mac 和 Linux, 使用外FAT,通过 Linux 上的命令行进行格式化,如我在我的网站上的文章中所示:基于簇大小的 exFAT 文件系统速度和磁盘使用情况 - 在 Linux Ubuntu 上格式化 exFAT 驱动器。
- 用于在之间共享文件Linux 和 Windows, 使用ntfs,通过 gparted GUI 格式化。 NTFS 是一种 Microsoft 文件格式,但 Linux(例如 Linux Ubuntu)完全支持对其进行读取和写入,无需额外配置。
注意:格式化 exFAT 分区时,我建议簇大小为 8 KiB。 128 KiB 可以让您的速度稍快一些,但如果您有很多小文件,则会浪费更多的磁盘空间。不要高于此值,否则当您有小文件时,您会浪费大量磁盘空间。
详细信息请参见我的图:
在这里阅读更多内容:
- 我的答案:最好使用 512kb 块或更小或更大的块将硬盘重新格式化为 exFAT?
- 我的网站文章:https://gabrielstaples.com/exfat-clusters/
- 我完整的 Python matplotlib/numpy 绘图代码在这里:https://github.com/ElectricRCAircraftGuy/eRCaGuy_hello_world/blob/master/stack_exchange/format_exFAT_PLOTS.py
适用于 MacOS 的 NTFS 驱动程序:
外FAT最大的缺点是它不支持符号链接。在这种情况下,也许可以考虑NTFS。它本身与 Windows 和 Linux 兼容,并且通过一些额外的驱动程序,您可以使其在 MacOS 上进行写入。前任:https://toolbox.easeus.com/ntfs-for-mac/index.html或者这里提到一个免费工具:https://superuser.com/a/45144/425838