在linux下有一个用着很爽的命令rm -f
,意为强制删除,同样这也是个非常危险的命令(可以理解为禁咒2333)。所以我是尽量避免使用这条指令的。
而今天我在编译一个C++文件时不小心将目标文件和源文件位置颠倒,结果也造成了与rm同样的结果。于是花了很久的时间来恢复这个文件。这里把整个过程记录一下。
首先我们从道理上来分析一下为什么“彻底删除”的文件可以恢复:
当我们彻底删除一个文件时,并不是从磁盘中删除,而是将这片区域(block)标记为空闲。而如果没有对该区域重新写入,则“彻底删除”的数据不会丢失掉,并且其iNode也没有删除或改变。
我们来简单地证实一下这件事:
首先新建一个“aa”文件
查看其iNode后删除
Linux(以Ubuntu16.04为例)和Windows误删文件恢复
最新推荐文章于 2025-04-10 11:58:01 发布