如何创建可写 VSS 快照?

How do you create a Writable VSS Snapshot?

这意味着您可以创建一个可写的 vss 快照:Usability limit for Volume Shadow Copy Service (VSS) in Windows

但是你是怎么做到的呢?我玩过一些东西,我可以通过删除卷上的只读标志来获得可写的 FAT/FAT32 分区 VSS 快照,但对于 NTFS,它报告 ERROR_WRITE_PROTECT

Shadow copies are read-only. 如果要将卷影副本转换为 read/write LUN,则需要额外的操作。

IVssBackupComponentsEx2::BreakSnapshotSetEx with VSS_BREAKEX_FLAG_MAKE_READ_WRITE 选项可以使卷影副本 LUN 作为 读写 卷公开给主机。

示例可以参考官方示例:VShadow Volume Shadow Copy Service sample。使用 -bw 命令将影子集分成 可写 卷。

撇开硬件 luns(和相关的 BreakSnapshotSetEx)不谈,有两种可能的方法可以通过纯软件方式获取可写快照。第一个是编写自定义 VSS 编写器并公开 OnPostSnapshot 事件处理程序。这是快照在 vss 创建后立即首先变为可写的位置,以便所有相关的编写者都可以在快照设备上进行特定的回滚更正。第二个是编写块设备驱动程序驱动程序,在只读持久快照设备之上分层可写差异映像。很像差异虚拟磁盘的工作方式。