当文件副本散落在不同的文件目录中时,如何根据源文件与副本的关联查找到它们的路径呢? 更进一步,当有副本被修改后,会增量存储修改部分,未修改部分则还是与源文件共用空间,那又如何确认哪个副本是被修改的?
1
iCruiser 2022-08-04 19:36:55 +08:00
这个特性是 APFS 管理的,在用户这一层并不需要去理解这些,只需把每个副本都当作是一个独立的完整副本即可。
|
2
pi1ot 2022-08-04 19:44:26 +08:00 1
通常是写时复制策略。
|
3
ZRS 2022-08-04 20:07:21 +08:00 via iPhone
文件的 metadata 是独立的
|
4
ubuntuGary OP @iCruiser 那能否在应用层将这个特性可视化?我觉得这个需求还是很酷的
|
5
ubuntuGary OP @ZRS 那这个 metadata 可以体现源文件与副本之间的关联吗,通过应用可以将其关系可视化展示吗?
|
6
billlee 2022-08-04 20:51:49 +08:00 3
一般这种设计是每个文件有自己的 inode, 然后引用相同的 blocks, 然后修改的时候 copy on write. 不同的 inode 是平等的,不区分源文件和副本,也很难识别哪些文件之间是有关联的。
|
7
2NUT 2022-08-04 21:08:09 +08:00
你看到的文件系统, 和 内核看到的不一样
inode 存了文件实际偏移地址和逻辑路径 |