linux系统文件删除原理

重复文件删除工具Linux32位 重复文件删除工具Linux32位 Duplicate-File-Eraser 立即下载

linux系统下文件名是存在父目录的block里面,并指向这个文件的inode节点,这个文件的inode节点再指向存放这个文件的block数据块。
我们删除一个文件,实际上并不是清除了inode节点和block数据块。只是在这个文件的父目录里面的block中,删除了这个文件的名字,从而使这个文件名消失,并且无法指向这个文件的inode节点。
当没有文件名指向这个inode节点的时候,会同时释放inode节点和存放这个文件的block数据块,并更新inode MAP和block MAP今后让这些位置可以用于放置其他文件数据。


文件删除控制的变量:
i_link 文件的硬链接数量
i_count 引用计数


当创建文件的硬链接的时候,对应的i_link数会增加。当一个文件被某一个进程引用时,对应i_count数就会增加。
对于删除命令rm而言,实际就是减少i_link。那么如果一个文件正在被某个进程调用,而用户却执行rm操作把文件删除了,这会出现什么情况?
用户执行rm操作文件后,再执行ls或其他文件管理命令,无法再找到这个文件了,但是调用这个被删除的文件的进程却在继续执行,依然能从文件中正确的读取及写入内容,这又是为什么呢?
这是因为rm操作只是将i_link减少了,如果没有其他的链接i_link就为0了,但由于该文件依然被进程引用,因此文件对应的i_count并不为0,所以即使执行rm操作,但系统并没有真正删除这个文件,当只有i_link及i_count都为0的时候,这个文件才会真正被删除。也就是说还需接解除该进程对这个文件的调用才行。
那么当文件没有被调用时,执行了rm操作删除文件后是否还可以找回被删除的文件呢?
rm操作只是将文件的i_link减少了,实际就是将文件名到inode的链接删除了。即使i_link减少到0了,此时并没有删除文件的实体(block数据块)。此时,如果即使停止机器工作,数据是可以找回的,如果此时继续写入数据,那么新数据就可能会被分配到被删除的block数据块,此时,文件就会被真正的回收了。

避坑指南:在Ubuntu 22.04上配置UR5e与ROS2 Humble真机通信的完整流程 本文详细介绍了在Ubuntu 22.04上配置UR5e机械臂与ROS2 Humble真机通信的完整流程,包括环境准备、网络配置、URCap安装、ROS2驱动部署及控制器状态验证等关键步骤。特别针对常见问题如网络连接失败、驱动启动错误等提供了实用解决方案,帮助工程师高效完成UR5e与ROS2的集成工作。 阅读详情

相关推荐

R语言笔记十:独立性检验函数

1.独立性检验函数        独立性检验是根据频数信息判断两类因子彼此相关或相互独立的假设检验。所谓独立性就是指变量之间是独立的,没有关系。 独立性检验算法:卡方检验、Fisher检验、Cochran-Mantel-Haenszel检验 2.假设检验 假设检验(Hypothesis Testing)是数理统计学中根据一定假设条件由样本推断总体的一种方法。 原假设——没有发生 备择假设——发生了 具体做法:根据问题的需要对所研究的总体作

weixin_44384631的博客 4111

用 inotify 监控 Linux 文件系统事件

在 2.6 内核中进行有效且高效的文件系统事件监控 当需要对 Linux®文件系统进行高效率、细粒度、异步地监控时,可以采用 inotify。可利用它对用户空间进行安全、性能、以及其他方面的监控。

idaretobe的专栏 843

Arduino-CRSF库详解:嵌入式端CRSF协议解析与ELRS接收机集成

CRSF(Crossfire Serial Protocol)是一种面向FPV无人机的轻量级、高实时性串行通信协议,采用单总线异步传输与8位CRC-8校验机制,广泛应用于遥控链路与遥测交互。其核心在于帧同步(0xC8起始字节)、反相逻辑电平及无重传的广播式设计,对嵌入式平台的UART精度、电平匹配和状态机健壮性提出严苛要求。Arduino-CRSF库正是为资源受限MCU(如ESP32、STM32、ATmega328P)提供零配置、中断安全的协议解析能力,封装了CRC查表计算、超时恢复、多级同步验证等关键机制

weixin_35756690的博客 415

Linux下进程崩溃时定位源代码位置

摘自:http://blog.chinaunix.net/uid-26611383-id-3453351.html 前几天领导安排一个小项目,大意是解决这样一个问题: 在Linux系统下,进程可能由于各种原因崩溃,此时我们要找到出问题的源代码在某一个文件的具体行号,这样调试起来就会方便,高效很多,可能是公司项目要用到,想想挺有意思的,加上自己本身是个Linux狂热者,最终花了两三天解决

向往大海专栏 2136

【GPT】Coze使用开放平台接口-【7】Dify 比较篇

coze 用于社交,dify 用来内部构建。抛开工作流,机器人,工具,coze 最大的区别在于可以直接发布到社交媒体上。所以,coze 对操作体验上也花了不少功夫,而 dify 就专注在帮助使用者打磨工作流。coze 各个大模块之前可以联动的机制也比较多,所以侧重点各不相同。

非晓为骁的博客 7613

ComfyUI-Impact-Subpack插件安装避坑指南:为什么你的UltralyticsDetectorProvider节点还是找不到?

本文深入解析了ComfyUI-Impact-Subpack插件的安装与排障问题,特别是针对UltralyticsDetectorProvider节点缺失的常见问题提供了详细的解决方案。从底层机制到高阶应用,涵盖了手动安装、模型配置、性能优化等关键步骤,帮助用户彻底解决插件依赖关系断裂问题。

Jerry的专栏 1152

linux 删除文件 编程,linux – 删除文件需要太长时间

短版本:rm -rf mydir,mydir(递归)包含250万个文件,在大多数闲置的机器上大约需要12个小时.更多信息:大多数被删除的文件是指向其他目录中文件的硬链接(被删除的目录实际上是rsnapshot最早的备份; rm命令实际上是由rsnapshot给出的).所以主要是目录条目被删除 – 文件内容本身并不多;它大约是几十GB.我很不确定btrfs是罪魁祸首.我记得在开始使用btrfs之前备...

weixin_29504571的博客 472

海思3516A移植MT7601U编译过程记录

官方地址:https://www.mediatek.com/products/broadbandWifi/mt7601 tar -xjf DPO_MT7601U_LinuxSTA_3.0.0.4_20130913.tar.bz2 cd DPO_MT7601U_LinuxSTA_3.0.0.4_20130913 1> Makefile替换 PLATFORM = HISI_3516A ifeq ($(PLATFORM),HISI_3516A) LINUX_SRC = /home/wbk/test/linu

qq_39048131的博客 1230

Linux 下文件删不掉怎么办?由浅入深的全方位排查指南

➜ 失败?ls -la(看权限) ➜chmod/sudolsof(看占用) ➜killlsattr(看属性) ➜chattr -ils -l(看硬链接数) ➜如果是 Conda/Git 等工具管理的文件,请使用工具自带的清理命令,不要手动 rm!

lihui261431的博客 1315

【OD统一考试(B卷)】比赛的冠亚季军,Python 解答

比赛的规则是 0 号和 1 号比赛,2 号和 3 号比赛,以此类推,每一轮,相邻的运动员进行比赛,获胜的进入下一轮,实力值大的获胜,实力值相等的情况,id 小的情况下获胜,轮空的直接进入下一轮。第一轮比赛,id 为 0 实力值为 2 的运动员和 id 为 1 实力值为 3 的运动员比赛, 1 号胜出进入下一轮争夺冠亚军,id 为 2 的运动员和 id 为 3 的运动员比赛,3 号胜出进入下一轮争夺冠亚军;2 号与 0 号,比赛进行季军的争夺,2 号实力值为 4,0 号实力值 2,故 2 号胜出,得季军。

梦想橡皮擦,专栏100例写作模式先行者,现象级专栏 《Python 爬虫 100 例》作者、《滚雪球学 Python 专栏》原创者 1万+

由于找不到mfc110u.dll,无法继续执行代码,重新安装程序可能会解决此问题的 解决方案

本文主要介绍了由于找不到mfc110.dll,无法继续执行代码的解决方案,希望能对使用Windows的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 5万+

linux rm删除文件原理

很多时候,我们都会发现,某个进程在对当前文件读写,但是我们依然能够rm, 是不是很奇怪?而windows下面,肯定会报错,”当前文件正在被使用“, 这就得从linux下面删除文件的原理说起了。          Linux是通过link的数量来控制文件删除的,只有当一个文件不存在任何link的时候,这个文件才会被删除。一般来说,每个文件都有2个link计数器:i_count 和 i_nlin

grantlee1988的专栏 5150

【实战教程】OpenClaw接入MySQL数据库实战指南

本文介绍了在虚拟机Ubuntu中访问宿主机Win11中MySQL数据库的配置方法,重点包括创建远程用户、权限配置和安全设置。首先在MySQL中创建具有只读权限的用户并刷新权限,然后调整服务器设置允许远程连接。文章还提供了某金融机构财富管理系统的数据库设计方案,包含理财产品表、客户表和份额表的核心结构,其中金额字段使用DECIMAL类型确保精度,并设置唯一键约束。文末强调测试环境配置完成后应恢复安全更新模式以保障生产环境安全。

海兰 8696

linux启动过程 & linux系统文件删除原理

linux系统文件删除原理。

weixin_51625382的博客 324

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Linux系统文件删除原理

磁盘报错“No space left on device”,但是df -h查看磁盘空间没满,请问为什么?答:df -i查看inode节点被沾满可能=======================================文件删除解决实战 web服务器磁盘故障答:可以删除u服务器日志文件,然后重启服务实战演示:[root@localhost ~]# yum install http...

weixin_30293135的博客 230

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

du的原理 linux_Linux系统文件删除原理

磁盘报错“No space left on device”,但是df -h查看磁盘空间没满,请问为什么?答:df -i查看inode节点被沾满可能=======================================文件删除解决实战 web服务器磁盘故障答:可以删除u服务器日志文件,然后重启服务实战演示:[root@localhost ~]# yum install http...

weixin_39790168的博客 146

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Linux基础系列(五)Linux系统文件删除原理

文件删除生成场景案例解决实战à web服务器磁盘满故障深入解析参考博文:http://oldboy.blog.51cto.com/2561410/612351Linux的文件名是存在父目录的block里面,并指向这个文件的inode节点,这个文件的inode节点再标记指向存放这个文件的block的数据块。我们删除一个文件,实际上并不清楚inode节点和block的数据。只是...

weixin_33726318的博客 186

Linux文件chattr/lsattr/Linux权限(搭建权限测试环境实战)引申到内部原理及Linux删除系统文件原理-7539字详谈

rw-r–r–1.三位一组2.前三位是用户位(owner)3.中三位用户组位(group)4.后三位为其他用户位(others)r read 可读的权限,用数字4来表示,三位中的首位w write 可写的权限 ,用数字2来表示,三位中的中间位x execuite 可执行的权限,用数字1来表示,三位中的最后位-没有权限针对文件r 可以读取文件内容(block)的权限w 可以增加,修改,删除文件内容(block)的权限有没有删除文件本身权限呢?(下文实战详谈)

2302_78067597的博客 1031

Linux运维入门-03系统文件修复

Linux系统文件修复 文件系统原理 ​ 文件系统在进行格式化时,被分成两个部分。即inode(索引)和block(块存储),其中inode存储的数据为指向用户存储数据(存储在块中)的索引,文件进行删除操作时,是删除inode,而非删除块存储的数据(即用户数据依旧存在,只不过被隐藏)。块存储的数据会在其他新数据存储的时候覆盖掉。 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kO0jMWIz-1605745422042)(C:\Users\Administrator\AppD

weixin_43730892的博客 368

Linux学习笔记9

1、Linux文件属性中各个列的含义(ls -lhi的结果) 139170 -rw-r–r--. 1 root root 22 Mar 11 15:17 oldboy.txt 从左往右: 139170:Inode号码,家庭住址 -:文件类型 rw-r–r--.:权限 1:硬链接数 root:属主-所有者 root:属组-所有者,属于的组 22:文件大小 Mar 11 15:17:文件的修改时间 oldboy.txt:文件或目录的名字(不属于属性) 2、磁

weixin_43975358的博客 185

linux学习-12天:有关硬连接 软连接

硬连接命令:ln 原文件 硬连接文件 el:ln /user/zhw /user/zhw_hd 1.不同的文件名具有相同inode节点 2.即使删除原文件,访问创建的硬连接文件,依然可以。 3.硬连接可以看成是文件的一个入口。 4.对于比较重...

choujing7275的博客 158

Linux文件系统

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结 前言 提示:这里可以添加本文要记录的大概内容: 例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。 提示:以下是本篇文章正文内容,下面案例可供参考 一、pandas是什么? 示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。 二、使用步骤 1.引入库 代码

weixin_55772194的博客 307

sudo rm-rf引发的惨案——Linux硬盘的分区和挂载

前不久,刚使用组里的一台服务器,这台服务器平时用的人不多, 没有严格的管理机制,大家都使用同一个用户名进行远程连接,人人都有sudo权限。我因为对Linux不是非常熟悉,使用管理员权限下执行了一个删除文件的操作(sudo rm-rf),直接把系统搞崩,差点给全组造成难以估量的损失,差点在我身上上演。。

兴趣使然的创作者 5377
上一篇: linux系统链接---硬链接
下一篇: linux系统链接---软链接
_IanXiao
博客等级 码龄12年 84粉丝 241原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值