@liuhui0803
2017-03-29T04:52:09.000000Z
字数 1251
阅读 2172
开发
iOS
移动
操作系统
文件系统
摘要:
随着iOS 10.3的正式发布,数百万设备即将升级为使用Apple的全新文件系统:APFS。然而根据多方评论,这是一次大胆,同时暗藏一定风险的举措。
正文:
随着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文件系统。
作者:Sergio De Simone,阅读英文原文:Apple Quietly Upgrades the File System of Millions of iOS Devices