如何使用Windows卷影拷贝服务恢复文件和文件夹

什么是卷影拷贝?

从Windows XP SP2和Windows Server 2013开始,微软就向Windows操作系统中引入了一项名叫卷影拷贝的服务(Volume Shadow Copy Service-VSS)。这种服务允许Windows系统以自动或手动的方式对文件或磁盘卷宗的当前状态进行备份(或快照),需要注意的是,在这个过程中,即使文件处于打开状态下该服务仍然可以直接进行文件备份。

当这些备份文件被创建之后,它们会被保存在一个特殊的容器中,即卷影拷贝(Volume Shadow Copy)。备份软件、实用工具或Windows系统都可以使用这些卷影拷贝来恢复已被删除或以某种形式修改后的文件。当我们使用卷影拷贝服务创建了一个备份文件时,它使用的是一种基于版本的方法备份的,即每次只备份文件中发生了变化的地方,而不是备份整个文件。因此,这种机制将允许我们查看到同一文件的不同版本,而不需要占用大量的磁盘空间。

你可以看到,如果有需要的话,这项技术可以帮助我们恢复被删除或被修改的文件。但是除此之外,我还发现这项服务可以用来恢复旧的游戏存档、已被勒索软件加密的文件、或自己不小心删除的文件。

在这篇文章中,我将给大家介绍两种使用卷影拷贝服务来恢复文件的方法。

第一种方法利用的是Windows内置的功能-以前的版本(Previous Versions);第二种方法使用了一款名叫Shadow Explorer的工具,这款工具可以帮助你直接查看卷影拷贝的文件或文件夹。

如何使用Windows的内置功能-以前的版本(Previous Versions)来恢复文件

Windows内置有一种名叫以前的版本(PreviousVersions)的功能,这项功能可以帮助我们从卷影拷贝快照中恢复以前的文件。下面所介绍的方法只能从卷影拷贝中恢复单一文件,如果你想要恢复整个文件夹的话,请看下面的章节。

首先,进入包含需要恢复文件的文件夹:

右键点击需要恢复的文件,选择属性:

在弹出的菜单中,点击“属性”(Properities),然后点击“以前的版本”(Previous Versions)标签。接下来,你会看到卷影拷贝中存储的该文件所有的之前版本。

接下来,你可以点击“恢复”(覆盖文件的当前版本)或“复制”(可选存储地址)按钮来恢复文件。如果你不确定的话,我建议你点击“复制”按钮将文件存储到特定目录中:

如何恢复整个文件夹

实际上,恢复文件夹跟恢复单一文件的操作是差不多的,只不过在右键点击并选择“属性”的这一步操作中,如果你想要恢复文件夹,你需要在文件夹中的空白地方点击鼠标右键并选择“属性”。

剩下的操作就跟之前恢复单一文件时是一样的了,即选择需要恢复的文件夹版本,然后点击“复制”按钮即可。

使用ShadowExplorer从卷影拷贝中恢复文件或文件夹

ShadowExplorer下载地址:【阅读原文】

就我个人而言,我比较偏爱这种方法,因为操作起来比较直观。下载好这个工具之后,打开它,你将会看到一个类似资源管理器的界面,其中包含有各个驱动器下的卷影拷贝以及相应的修改日期和文件类型。你可以选择驱动器和创建时间来快速寻找需要恢复的文件:

接下来,找到你需要恢复的文件或文件夹,右键点击它,然后选择“导出”(Export)。

点击了“导出”之后,ShadowExplorer将会显示一个对话框让你选择将文件恢复到哪里,选择好之后点击“确认”(OK)即可:

为什么恶意软件会尝试删除卷影副本?

计算机勒索软件在感染了Windows系统并加密了目标用户的文件之后,通常都会尝试删除卷影副本。大家已经看到了,使用卷影副本来恢复文件是多么的简单,那么勒索软件当然不想用户这么轻松地就恢复了自己的文件!

当勒索软件尝试删除卷影副本时,通常使用的是下面这行命令:

C:\Windows\Sysnative\vssadmin.exe"Delete Shadows /All /Quiet

这条命令执行之后,Windows将会显示一条UAC对话框并询问用户是否要以管理员权限执行这条命令。如果用户允许执行,那么vssadmin.exe将会删除目标主机中所有驱动器的卷影副本。在某种情况下,勒索软件还会使用PowerShell或WMIC命令来删除SVC,并以此来防止用户恢复那些已被勒索软件加密了的文件。

原文发布于微信公众号 - FreeBuf(freebuf)

原文发表时间:2017-11-02

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏区块链

Web安全常见漏洞修复建议

看各大发布漏洞的平台,发现众多挖洞大神精彩的漏洞发掘过程,但在修复建议或者修复方案处,给出千奇百怪神一般的回复,故而总结一下修复建议(才疏学浅不算太全敬请谅解,...

2846
来自专栏软件工程师成长笔记

git在github远程仓库的克隆和上传使用教程

最近公司要做一个资产管理软件后台工程创建出来,用eclipse、用git做一下版本控制。

933
来自专栏同步博客

memcached的安装以及php两个扩展软件安装(memcache、memcached)

百度云安装包:http://pan.baidu.com/s/1pKZeDwn  k3ap

932
来自专栏木制robot技术杂谈

懒人神器 autoenv

前言 每次去不同的项目下运行程序都要更改相对应的 Python 环境,那么有什么办法可以省去这繁琐的一步吗?答案肯定是有的,Kenneth Reitz 已经为我...

4116
来自专栏云计算教程系列

如何在Debian 9上安装Linux,Apache,MariaDB,PHP(LAMP)堆栈

“LAMP”堆栈是一组开源软件,通常安装在一起以使服务器能够托管动态网站和Web应用程序。这个术语实际上是一个缩写,代表L inux操作系统,带有A pache...

3262
来自专栏IT杂记

Windows下jps, jconsole无法查看本地java进程问题解决

先通过本地java代码运行: System.out.println(System.getProperties()); 查看属性java.io.tmpdir=C:...

2936
来自专栏CaiRui

Linux 优化

 一、最小化原则 (1)安装最小化 (2)开机启动服务最小化 (3)操作最小化 (4)权限最小化 (5)配置参数合理,不要最大化 二、端口优化   远程登录的端...

26210
来自专栏北京马哥教育

Nginx专题: upstream模块和缓存的简单使用

前言 本文接着上篇Nginx专题: 从编译安装到URL重写来介绍Nginx的负载均衡模块使用方法, 本文的实验没有考虑大多数情况, 例如两个web服务器之间的数...

3167
来自专栏用户画像

7.4.1 程序查询方式

信息交换的控制完全由主机执行程序实现,程序查询方式接口中设置一个数据缓冲寄存器(数据端口)和一个设备状态寄存器(状态端口)。当主机进行I/O操作时,首先发出询问...

891
来自专栏守望轩

Visual Studio 2008 每日提示(二十七)

#261、按Ctrl+Alt+B打开断点窗口 原文链接:You can press Ctrl+Alt+B to open the Breakpoint Win...

3206

扫码关注云+社区

领取腾讯云代金券