macos - 是否可以在文件系统上创建 "weakly referenced"硬链接(hard link)?

标签 macos reference filesystems symlink hardlink

某些编程语言能够区分强引用对象和弱引用对象,以便在所有强引用消失后弱引用对象成为垃圾回收的候选对象。

文件系统上的硬链接(hard link)是否有类似的概念?这是一个理论上的 API:

 $ touch A
 $ ln --weak A A_hardlink   # create a 'weakly referenced' hard link
 $ rm A
 $ stat A_hardlink          # no such file or directory

符号链接(symbolic link)可以给你这个,除了 A 的符号链接(symbolic link)仍然会出现在磁盘上(即使它的底层文件已经消失),而且我想利用直接指向相同 inode 的优势(用于跟踪移动,主文件的重命名等)。有任何文件系统实际上支持这个或类似的东西吗?

最佳答案

否(除非您创建自己的具有此功能的文件系统)。据我所知,所有文件系统中从目录条目到 inode 的所有链接都是强链接。在大多数文件系统中实现弱链接将是一个挑战,因为 inode 不会“记住”指向它的目录条目的位置,但它必须找到所有这些条目,以便在所有强链接都删除后删除它们到 inode 都消失了。

关于macos - 是否可以在文件系统上创建 "weakly referenced"硬链接(hard link)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12334204/

相关文章:

macos - 如何在 cocoa 的同一窗口中显示不同的 View ?

python - 在 Mac OS X 上安装 libxml2 时出现问题

linux - 用于 GCC/G++ 的宏来区分 Linux 和 Mac OSX?

javascript - 为什么删除了错误的对象?

c++ - 将 const T (&ref)[N] 绑定(bind)到 T[N] 类型的对象

java - 如何快速找到添加/删除的文件?

macos - 无法在 Mac 终端下载开源项目的源代码

c++ - 向上移动对象层次结构

filesystems - Kafka直接在磁盘上写数据?

Python mkdir 给我错误的权限