Apple 的APFS文件系统似乎非常类似Solaris的ZFS,提供了容器文件系统功能,在存储上可以不断添加容器卷,容器卷的空间和存储池相同,相互间隔离,但是又可以动态调整空间大小。
# diskutil list
/dev/disk0 (internal, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *121.3 GB disk0
1: EFI EFI 209.7 MB disk0s1
2: Apple_APFS Container disk1 120.5 GB disk0s2
/dev/disk1 (synthesized):
#: TYPE NAME SIZE IDENTIFIER
0: APFS Container Scheme - +120.5 GB disk1
Physical Store disk0s2
1: APFS Volume MacBook_Air 14.1 GB disk1s1
2: APFS Volume Preboot 42.3 MB disk1s2
3: APFS Volume Recovery 1.0 GB disk1s3
4: APFS Volume VM 1.1 GB disk1s4
/dev/disk1
实际上是Container disk
的映射,可以看到注释中写明了Physical Store disk0s2
。如下:
2: Apple_APFS Container disk1 120.5 GB disk0s2
...
0: APFS Container Scheme - +120.5 GB disk1
Physical Store disk0s2
sudo diskutil apfs resizeContainer disk0s2 20.5g
sudo diskutil apfs resizeContainer disk0s2 20.5g jhfs+ Extra 50g
Shrinking APFS data structures
APFS Container Resize error code is 49153
Error: -69606: A problem occurred while resizing APFS Container structures
# tmutil listlocalsnapshots /
com.apple.TimeMachine.2018-03-13-160409
# tmutil deletelocalsnapshots 2018-03-13-160409
Deleted local snapshot '2018-03-13-160409'