Windows – Identifying change to disk block level

block-leveldisk-space-utilizationwindows

I have a problem 🙂

I would like to identify how much change there has been at block level to either an entire disk or a particular file.

Ideally there is a tool that runs a scan on a disk or a file and produces "fingerprints" for each block and then is able to compare those fingerprints at a later stage to arrive a number of changed blocks since the last scan.

Does anyone have any ideas? Can anyone suggest any tools, command line utilities?

UPDATE

I found the following project:

https://github.com/OctopusDeploy/Octodiff

which is a C# implementation of the rdiff tool which is itself based on the rsync algorithm and essentially is along the lines of what I was hoping for.

Now what I need is a tool that outputs the data changed stats without writing out a delta file.

Best Answer

Microsoft block tracking feature similar to VMware CBT mechanism should be available in Windows Server 2016. You could access this feature by using some public API's (like Veeam employs vSphere CBT). So I guess it may help you to track blocks of the data that have been changed. We are also running hyper-v using veeam and sitting on Starwind vSAN that works well with VSS. I know Nimble supports VSS/CBT too.