文件删除/打开现象

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/maxlovezyy/article/details/80283304

linux ext4

一个文件有两个引用计数:打开的文件描述符引用计数和硬链接引用计数。当unlink一个软连接时,软连接当即被删除,文件还在。当unlink一个硬链接时,文件的硬链接引用计数减一。

  • 如果硬链接引用计数为0了,则文件系统中看不到这个文件了(无法再打开)。
  • 如果文件描述符引用计数不为0,则当前正打开的文件描述符依然有效,并且文件系统上的空间不会被回收直到文件描述符引用计数为0了。
  • 只要硬链接的引用计数为0了,rmdir删除一个目录时就不会认为有这个子。

windows NTFS

  • 如果“硬链接”引用计数为0了,则windows资源管理器依然能看到这个文件了,但无法再打开(包括系统调用)。
  • 如果文件描述符引用计数不为0,则当前正打开的文件描述符依然有效,并且文件系统上的空间不会被回收直到文件描述符引用计数为0了。
  • 即便“硬链接”的引用计数为0了,删除一个目录时如果文件描述符引用计数不为0,则依然认为这个子存在。

猜你喜欢

转载自blog.csdn.net/maxlovezyy/article/details/80283304