我的目标是让备份程序读取物理磁盘(带有 NTFS 分区),同时使用 VSS 来实现数据一致性。
我使用 windows api 的函数 CreateFile 和 '\.\PhysicalDriveN' 如此处所述(基本上,它允许我将磁盘作为大文件访问)
https://support.microsoft.com/en-us/help/100027/info-direct-drive-access-under-win32
对于测试,我使用此命令创建体积阴影
wmic shadowcopy call create Volume='C:\'
这是一个临时解决方案,我计划通过程序本身使用 VSS
我的问题是: 如何存储卷影?它是存储自卷影以来已修改的数据,还是存储自上次卷影以来所做的修改?
在第一种情况下: 当我读取磁盘时,我会得到一致的数据(包括 ntfs 元数据文件)吗?
在另一种情况下: 我可以像访问磁盘/分区一样访问卷影吗?(为了读取隐藏的元数据文件等)
-我目前正在使用 Windows 7,但计划在不同版本的 Windows 服务器上使用它
-我已经阅读了很多关于 VSS 的微软文档,但它的工作原理对我来说似乎真的不清楚(如果你回答了一个,请解释一下它的含义)
-我知道卷影作为文件存储在“系统卷信息”文件夹中,名称类似于 {3808876b-c176-4e48-b7ae-04046e6cc752}