随着 iOS 10.3 的正式发布,数百万设备即将升级为使用Apple 的全新文件系统: APFS 。然而根据多方评论,这是一次大胆,同时暗藏一定风险的举措。
APFS 亮相于去年 WWDC,InfoQ 也对其进行了报道,该文件系统将取代最初伴随Mac OS 8.1问世,沿用将近20 年的老旧HFS+ 文件系统。APFS 增加了与 ZFS 和 HAMMER 类似的大量新功能,包括对加密、写入时复制、灵活的分区、快照、原子化保存等功能提供了更好的支持。
与曾经安装过 iOS 10.3 测试版的开发者类似,在自己设备上安装 10.3 正式版的用户也会面临一个极为漫长的升级过程,似乎是因为要对文件系统进行转换,截至撰写本文时尚未听说这一过程出现过什么重大已知问题。
有趣的是,这是APFS 首次正式登场,之前该文件系统仅通过开发者预览的形式出现在macOS Sierra 中,并且包含诸多局限,例如无法将APFS 格式的磁盘用作启动磁盘。因此Apple 决定通过推送文件系统转换操作让上千万设备同时使用该文件系统,这一决定让人有些吃惊,毕竟这会导致任何潜在的问题被无限放大。正如Ars Technica 的Andrew Cunningham所说,考虑到Apple 实际上控制着整个iOS 平台,对于该平台所用硬件和分区架构的所有细节了然于胸,这一举措似乎显得很合理。此外iOS 设备封闭的本质也使得未越狱用户基本不可能破坏掉设备的存储系统,这也让转换的效果更为可控。
然而这并不意味着升级到APFS 的所有用户都不会遇到任何非预期的后果。macOS 和iOS 开发者Michael Tsai 在他的博客中写到,一些因素导致APFS 与HFS+ 之间存在一些固有的冲突,例如APFS 并不会对Unicode 文件名进行标准化,并且APFS 允许同一个目录下使用多个同名文件,而仅名称字符的大小写有所差异。InfoQ 也将密切关注此类问题,如果有任何有趣的发现将在第一时间报道。
尽管技术上可以做到使用对用户来说完全透明的方式升级文件系统,但Reddit 用户 applishish 介绍说,迁移工作实际上并未实际移动数据,而是直接将 APFS 元数据写入 HFS+ 的可用空间。这种方法的优势在于,如果转换过程中出现任何错误,用户依然具备一个可用的 HFS+ 分区。在同一个帖子中,Reddit 用户 1337Gandalf 称,Apple 的此番举措让人回想起 Microsoft 在推广 Windows XP 时应对 FAT32 卷升级未 NTFS 文件系统时的做法,不过当时用户可以自行选择是否要在升级系统的过程中同时升级到NTFS 文件系统。
阅读英文原文: Apple Quietly Upgrades the File System of Millions of iOS Devices
评论