1. 背景

在Windows(从XP到Win7)中删除文件时,无论是Delete或者是Shift+Delete,都不能真正的删除文件,它做的事情只是从文件分配表中删除了该文件的信息,而并未将文件从存储介质中真正删除。直到硬盘需要此数据空间时,原先的数据才会被覆盖。

因为这样的删除机制,所以网上才有很多的文件恢复工具,如:EasyRecovery/FinalRecovery/Recuva等;相应的,网上也有很多的文件彻底删除工具,它们的名称我就不一一列举了,因为经过我的试验,它们中的好多其实是不能真正物理删除文件的。

前段时间需要恢复一个被自己删除的文件,然后用FinalRecovery恢复,效果不错。然后我就想,那怎样彻底删除一个文件呢?如果是我的隐私信息,我当前不希望我按Shift+Delete,它其实还在我的硬盘上。然后我就用手头的工具测试了一下,不测不知道,一测吓一跳。我用的Windows优化大师是付费版本的,它自带的Wopti文件粉碎工具根本不能物理删除文件。测试了多次,无论是图片、文本文档,都可以轻易的通过FinalRecovery工具恢复(包括文件名不变,内容不变)。然后我又下载了360文件粉碎工具,一样的效果(它的反应速度还很快,几个G的数据几秒就删除完了,可能吗?)。(此段落内容是09年做的测试,现在不知道怎样了)

本文的目的就是探讨Windows环境下文件的删除与恢复。怎样彻底删除文件?怎样恢复误删除的文件?

2. 怎样彻底删除文件?

  1. 推荐文件粉碎工具一,Wipe File。它是一款免费的软件,免安装,只有几百K,功能很强大,可以对文件真正的彻底删除。经它删除后的文件,通过FinalRecovery/Recuva都不可以恢复(不能获取原文件名,不能获取原文件数据内容,都经过乱码处理了)。同时可以通过配置,把它集成到右键菜单中。下载地址:http://www.gaijin.at/dlwipefile.php
  2. 推荐文件粉碎工具二,Eraser。它是一款开源软件,稍大些,9M左右,功能更强大,可以对文件(File)、文件夹(Folder)、回收站(Recycle bin)、尚未使用空间(Unused disk spaces)等进行彻底删除。下载地址:http://eraser.heidi.ie/

建议:

  • 如果文件还没有删除,用上面两种工具都可以彻底删除。
  • 如果文件已经在回收站里,则只能通过Eraser选择回收站(Recycle bin)进行彻底删除。
  • 如果文件已经按Shift+Delete删除了(或清空回收站),则建议通过Eraser选择尚未使用空间(Unused disk spaces)等进行彻底删除(非常耗时);或者是通过Recuva工具先扫描磁盘中已经删除了的文件,然后选择需要覆盖的文件,在右键菜单中选择“安全覆盖选择项目”,这样速度来得快些,但结果没有经过测试。
  • 一般文件3次以上重写即可(如:美国海军规范);重要文件请选择古特曼法(Peter Gurmann)覆写35次,以保证文件不可以恢复。大文件多次覆写请慎重,因为特别耗时。为什么要覆写如此多的次数,请参考文章:http://wenku.baidu.com/view/d4700bea81c758f5f61f67a0.html

3. 怎样恢复误删除的文件?

  • 如果刚按了Delete,文件在回收站内,直接到回收站选择相关文件恢复即可。
  • 如果删除了文件,并且已经清空了回收站,则只能通过工具恢复。推荐文件恢复工具,Recuva,下载地址:http://www.piriform.com/,效果很不错,有免费版本也有商用版本。反删除软件FinalRecovery工具也很不错,但它需要注册。
  • 如果用了类似于上面的工具彻底删除了某文件,然后又想恢复此文件,那么,上帝保佑你吧......

Windows环境下文件的彻底删除与恢复,推荐几个工具(整理)的更多相关文章

  1. python Windows环境下文件路径问题

    转自:http://blog.sina.com.cn/s/blog_5ee7254801013zu7.html 在python程序里面我们经常需要对文件进行操作,Windows下的文件目录路径使用反斜 ...

  2. Windows环境下Mysql如何快速导入或恢复表为innodb的数据

    注: 一.这个是对Innodb的数据恢复.MyISAM不需要这么麻烦,只要数据文件存在直接复制过去就可以. 二.该方法只适用于 1:想要恢复或者导入表的ibd文件和frm文件 2:你不仅需有ibd和f ...

  3. windows环境下创建 .文件夹

    一.windows环境下创建 .文件夹 1.新建一个文件夹 2.重命名为.properties.(名字前后都加点) 二.windows环境下创建 .文件 1.上面的方法对文件同样适用 2.运行CMD, ...

  4. maven在windows环境下加载settings.xml文件

    今天发现maven在windows环境下加载的settings.xml文件是c:下的,就算修改conf下的settings.xml里的<localRepository>给他明确指向也没用.

  5. windows环境下svn同步web文件[转]

    windows环境下svn同步web文件 SVN在团队开发中使用非常普遍,是一个很方便的版本控制系统. 如果要是能将SVN服务器上的数据自动发布到Web服务器,那将是整个项目开发.测试更加便捷.利用S ...

  6. Windows环境下用C#编程将文件上传至阿里云OSS笔记

    Windows环境下用C#编程将文件上传至阿里云OSS笔记 本系列文章由ex_net(张建波)编写,转载请注明出处. http://blog.csdn.net/ex_net/article/detai ...

  7. Windows环境下C++中关于文件结束符的问题

    参考资料:http://www.cnblogs.com/day-dayup/p/3572374.html 一.前言 在不同的OS环境下,程序中对应的文件结束符有所不一样,根据<C++ Prime ...

  8. 在windows环境下运行compass文件出现的错误提示解决方案

    在windows环境下运行compass文件出现的错误提示解决方案 例如:经常在项目中运行grunt命令编译scss文件的时候,会出现下面的错误提示 (Encoding::CompatibilityE ...

  9. windows环境下备份与恢复,与文件拷贝

    mySQL数据库在windows环境下备份与恢复 解压版需进入数据库安装目录.安装版可以忽略本步骤: 1.先在运行中输入CMD,启动命令行2.进入Mysql的Bin目录:E:\Program File ...

随机推荐

  1. Oracle体系结构一(学习笔记)

    总体结构分为三个部分:SGA,PGA,FILE文件 按功能分: 存储结构  存储结构对应关系  主要文件: 数据文件: 每个数据文件只与一个数据库相关联 一个表空间可以包含一个或者多个数据文件 一个数 ...

  2. matlab histeq函数介绍

    Histeq Enhance contrast using histogram equalization 该函数通过直方图均衡化来添加对照度 Syntax J = histeq(I,hgram) De ...

  3. 算法笔记_170:历届试题 分糖果(Java)

    目录 1 问题描述 2 解决方案   1 问题描述 问题描述 有n个小朋友围坐成一圈.老师给每个小朋友随机发偶数个糖果,然后进行下面的游戏: 每个小朋友都把自己的糖果分一半给左手边的孩子. 一轮分糖后 ...

  4. cmd获取批处理文件所在路径

    在批处理开头加入cd /d %~dp0 一行代码就真真实实地做到“编写一次,到处运行”.%0是批处理文件本身的路径,%~dp进行扩展, d向前扩展到驱动器,p往后扩展到路径.例如,你的bat文件在e: ...

  5. SwaggerUI+SpringMVC——构建RestFul API的可视化界面

    今天给大家介绍一款工具,这个工具眼下可预见的优点是:自己主动维护最新的接口文档. 我们都知道,接口文档是非常重要的,可是随着代码的不断更新,文档却非常难持续跟着更新,今天要介绍的工具,完美的攻克了这个 ...

  6. PO*创建标准采购订单

    --   l_iface_rec       po_headers_interface%ROWTYPE; 校验头相关信息 ) INTO l_po_count FROM po_headers_all p ...

  7. getattr和setattr

    >>> class MyData(): def __init__(self,name,phone): self.name=name self.phone=phone def upda ...

  8. Redis学习(3)-redis启动

    前端启动 tomcat,redis,mysql的端口号: mysql 3306 tomcat 8088 redis 6379 一,启动redis服务: 例如当前位置在redis安装目录下面: 启动re ...

  9. nginx的Mainline version、Stable version、Legacy version的版本区别

    nginx的Mainline version.Stable version.Legacy version的版本区别 创建时间:2014-01-16 10:30:37最后修改:2014-09-23 20 ...

  10. DRUPAL 关于 $user 用户权限

    按登录非登录判断: < ?php global $user;/*是否为登录用户*/ if ($user -> uid){/*如果是当前浏览者为登录用户则显示下面的内容*/ print ; ...