当前位置: 首页 > news >正文

4.1.8文件共享

知识总览

基于索引节点的共享方式(硬链接):

让不同用户的文件目录项指向同一个文件的索引节点

用户1创建文件1,并让文件目录项aaa指向了文件1,这个文件对应了一个索引节点,这个索引节点 包含了文件的物理地址和文件的其他属性信息+链接计数变量count(用来记录有几个用户共享了这个文件)

文件1共享前

链接计数变量count=1

文件1共享后

有另外一个用户2要使用文件1,文件1被共享,则会在另外用户的文件目录)新建一个目录项(该用户的文件目录项可以不用叫aaa)指向aaa文件,然后链接计数变量count值+1则count=2

某个用户删除文件1:

因为文件1是共享文件,所以某个用户删除的只是该用户文件下的文件目录项,然后该共享文件的索引节点中的链接计数变量Count-1,即count=1,此时count>0,证明该文件仍被其他用户使用,则不能直接删除该文件数据,当count=0时,会删除该文件数据+索引节点数据

基于符号链的共享方式(软连接):

新用户3共享一个文件1时,并不是直接将自己的文件目录项指向该共享文件1,而是通过建立一个link类型的文件2,该link类型的文件保存了共享文件的1的保存路径,因为已经有了用户1和用户2直接指向了共享文件aaa,所以该link类型的文件保存的路径可以是用户1/aaa目录项/文件1,或者用户2/bbb目录项/文件1,因为通过这俩路径都能找到aaa文件,然后用户3建立一个文件目录项指向link类型文件2,在用户3访问ccc目录项时,操作系统会判断ccc指向的文件属于link类型的文件,然后会根据link文件保存的aaa文件路径找到aaa表项,进而找到文件1索引节点,进而问文件1

文件1被删除:

假如用户1和用户2不再共享使用文件1,则文件1中的链接计数count=0,即文件1会被删除,此时用户3中的link文件依然存在,即真实共享文件的删除和link文件是否被删除无关,但是此时用户3再去通过link文件ccc访问文件1会报错 ,如下图所示QQ的.exe程序被删除后,再打开QQ的快捷方式会报错找不到文件

http://www.xdnf.cn/news/512389.html

相关文章:

  • MCP实战:在扣子空间用扣子工作流MCP,一句话生成儿童故事rap视频
  • java中的Servlet3.x详解
  • 07、基础入门-SpringBoot-自动配置特性
  • wsl2中Ubuntu22.04配置静态IP地址
  • 荔枝成熟度分割数据集labelme格式2263张3类别
  • 基于PageHelper的分页查询
  • MyBatis-Plus 的 updateById 方法不更新 null 值属性的问题
  • MySQL--day2--基本的select语句
  • 50天50个小项目 (Vue3 + Tailwindcss V4) ✨ | Expanding Cards (展开式卡片)
  • AI预测3D新模型百十个定位预测+胆码预测+去和尾2025年5月18日第81弹
  • symfonos: 1靶场
  • 一个stm32工程从底层上都需要由哪些文件构成
  • 【ROS2】RViz2源码分析(九):RosClientAbstraction和RosNodeAbstraction的关系
  • Android 性能优化入门(二)—— 内存优化
  • MATLAB安装常见问题解决方案
  • C++23 放宽范围适配器以允许仅移动类型(P2494R2)
  • Java求职者面试:从Spring Boot到微服务的技术点解析
  • 什么是机器学习?
  • HiTool机顶盒刷机提示:网络下载TFTP超时,可能的原因如下
  • 原型链的详细解释及使用场景
  • ShenNiusModularity项目源码学习(26:ShenNius.Admin.Mvc项目分析-11)
  • JavaScript 中的 Window 对象详解
  • 气体放电管和TVS管之间加电感
  • 【Linux】利用多路转接epoll机制、ET模式,基于Reactor设计模式实现
  • AutoGPT-Agent简述版
  • java实现poi-ooxml导出Excel的功能
  • Graphics——基于.NET 的 CAD 图形预览技术研究与实现——CAD c#二次开发
  • 微软将于 8 月 11 日关闭 Bing Search API 服务
  • 服务器防文件上传手写waf
  • 系统性能不达标,如何提升用户体验?