APFS(Apple文件系统)是用于在存储系统上组织和构造数据的专有系统。apf苹果最初发布时就使用了它macOSHigh Sierra取代了之前在mac上使用的30年的HFS+系统。
HFS+和HFS(分级文件系统的早期版本)是在软盘时代创建的,在第三方提供旋转硬盘驱动器是昂贵的选择时,软盘是Mac的主要存储介质。
多年来,Apple调情替换HFS +。最终,已包含在内的APFSiOS.tvOS和watchOS成为运行macOS High Sierra及以后版本的mac的默认文件系统。
APFS包括在macOS Catalina (10.15), macOS Mojave (10.14), macOS High Sierra(10.13),以及在iOS 10.3和更高版本,tvOS 10.2和更高版本,以及watchOS 3.2和更高版本中。
针对现代存储技术进行了优化
HFS +已实施800 KB的磁盘是王。现在的mac电脑不使用软盘,而且旋转的硬盘都开始显得过时了。随着苹果在其所有产品中都强调基于闪存的存储,为旋转媒体和等待磁盘旋转的固有延迟而优化的文件系统不再有很大意义。
苹果设计的APFS从一开始固态硬盘以及其他基于闪存的存储系统。尽管APFS针对固态存储进行了优化,但它在现代硬盘驱动器上表现良好。
能否经得住时间的考验
APFS支持64位inode号码。inode是一个唯一标识符,标识文件系统对象 - 文件或文件夹。使用64位inode,APFS可以容纳大约9个千万码文件系统对象,爆破超过21亿的旧限额。
九千万是一个很大的数字,你可以正确地奇异地想知道哪些存储设备将有足够的空间来保持许多对象。答案需要偷看存储趋势。考虑一下:Apple已经开始将企业级存储技术移动到消费级产品,例如Mac及其使用分层存储的能力。这是第一次见到的融合驱动器,它在高性能SSD和较慢之间移动数据,但更大,硬盘更大。频繁访问的数据保持在快速SSD上,而较少使用的文件较少地存储在硬盘上。
通过macOS,苹果扩展了这一概念基于ICLOUD的存储混合。允许用户在iCloud中存储他们已经看过的电影和电视节目可以释放本地存储空间。虽然这个例子不需要一个统一的inode编号系统中所有磁盘使用这种分级存储系统,它显示一个大方向苹果正在汇集多个存储技术最适合用户的需求和操作系统看到他们作为一个单独的文件空间。
APFS功能
APFS有许多功能将其与旧文件系统分开。
- 克隆:克隆允许几乎瞬时的文件副本而不使用额外的空间。而不是将文件位从一个位置复制到另一个位置,而是引用原始文件,而是共享两个文件之间相同的数据块。更改一个文件,只有更改的数据块被写入新克隆,而原始和克隆则继续共享不变的数据块。这不仅使文件复制和保存异常快速,而且还可以节省存储空间需求。
- 快照:APFS可以创建一个表示时间点的卷快照。快照有助于高效备份,并允许您返回某些特定时间点的情况。快照是原始卷的只读指针及其数据。除了存储指向原始卷所需的空间量之外,新快照占用了实际空间。随着时间的推移和更改,对原始卷进行了更改,仅使用发生的更改更新快照。
- 加密:APFS支持使用AES-XTS或AES-CBC模式强大的全磁盘加密。文件和元数据都是加密的。支持的加密方法包括:
清除(没有加密) - 单键
- 多键,每个文件都有用于数据和元数据的键
- 空间分享:空间共享将结束到预定义分区大小。相反,所有卷分享驱动器上的底层可用空间。空间共享允许在驱动器上的多个卷根据需要动态增长和缩小,而无需重新分区。
- 即写即拷:此数据保护方案允许只要没有更改即可共享数据结构。一旦要求更改(写),就会进行新的独特副本,确保原始留下完好无损。只有在写完成后,才会更新文件信息以指向最新数据。
- 原子救:这与写时拷贝的概念类似,但适用于任何文件操作,如重命名或移动文件或目录。以rename为例,将使用新数据(文件名)复制将要重命名的文件。直到复制过程完成,文件系统才更新为指向新数据。这确保了如果由于任何原因——例如电源故障或CPU打嗝-写没有完成,原始文件保持完整。
- 稀疏文件:这种更有效的分配文件空间的方式只允许文件空间在需要时增长。在非稀疏文件系统中,必须提前预留文件空间,即使没有数据准备存储。