微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

APFS 是否真的支持命名分叉或仅支持资源分叉和扩展属性?

如何解决APFS 是否真的支持命名分叉或仅支持资源分叉和扩展属性?

从 8.1 版到 Mountain Lion (10.8),操作系统支持一个名为“命名叉”的概念。命名分支相当于 Windows 中的“备用数据流”。

There is a ton of confusion on the internet now 介于命名分支资源分支之间以及命名分支扩展属性之间.这是表明它们都是独立概念的时间表:

  • 1984 1.0:MFS:数据分叉 + 资源分叉
  • 1985 2.1:HFS:仍然只有数据 + 资源分叉
  • 1988 8.1:HFS+:添加了对命名分叉的支持
  • 2005 10.4 Tiger:HFS+:添加了扩展属性
  • 2013 年 10.9 小牛队:HFS+:已弃用命名叉
  • 2017 年 10.13 High Sierra:apfs
  1. 在所有操作系统版本和所有 Apple 文件系统上一直存在数据分叉和资源分叉。如今,操作系统似乎唯一使用资源分支的地方是为文件夹提供自定义图标。这将创建一个名为 Icon\r文件,其中包含一个零长度的数据分支和资源分支中的图像数据。文件名包含一个实际的回车符!

  2. 在引入扩展属性之前,已支持命名分支 7 年。

  3. HFS+ 肯定支持命名叉和扩展属性 8 年,尽管我不知道一个文件是否可以同时具有这两种属性,或者它们是否与小牛之前的命名叉和扩展属性相同来自小牛队的属性

  4. 在引入 apfs 前 4 年,已弃用命名分支。

命名叉从来没有被经常使用。我编写了代码来尝试对文件和目录调用 FSCreateFork。无论是在 HFS+ 还是 apfs 卷上,无论我在 Big Sur 还是 Sierra 下运行它,它总是失败并显示错误 -1402“Fork name parameter is bad”。我无权访问其他操作系统版本。

所以我找不到测试的方法,而且网上的信息也很乱,我无法谷歌搜索

这里有没有专家知道 apfs 是否支持命名分叉?

解决方法

一个快速测试说明资源分叉在 APFS 上与 Bug Sur 一起工作,但任意命名的分叉似乎没有:

$;回声“数据叉”> test.txt
$;回声“资源叉”> test.txt/..namedfork/rsrc
$;猫测试.txt
数据叉
$; cat test.txt/..namedfork/rsrc
资源叉
$;回声“资源叉”> test.txt/..namedfork/other
-bash: test.txt/..namedfork/other: 不是目录
$;

更重要的是,Apple File System Reference 描述了 APFS 的内部结构,并详细说明了两个 inode 标志 delay 0.5INODE_HAS_RSRC_FORK。没有提及任何其他类型的分叉或分叉的命名,所以我认为我们可以相当有把握地说 APFS 上不存在命名分叉。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。