Sparsify an NTFS Logical Volume


After some tinkering with a Windows 7 template, I wanted to reclaim about 10 GBs of space, since Qube Manager and lvs were showing about 25 GBs of usage, whereas I actually have been using about 15 GB.

The first thought was to fill the free space with zeroes, remove the filler and --dig-holes with fallocate as the Community Docs suggest. There were two attempts for this:

Not only none of these methods worked but it looks like I made things worse - the LV appears to be completely occupied:

[user@dom0 ~]$ sudo lvs | grep -E 'vm-windows-7-root|Data%'
  LV                                           VG         Attr       LSize    Pool      Origin                                       Data%  Meta%  Move Log Cpy%Sync Convert
  vm-windows-7-root                            qubes_dom0 Vwi-a-tz--  <74.51g vm-pool   vm-windows-7-root-1676301574-back            99.90                                  
  vm-windows-7-root-1675851219-back            qubes_dom0 Vwi-a-tz--  <74.51g vm-pool                                                35.72                                  
  vm-windows-7-root-1676301574-back            qubes_dom0 Vwi-a-tz--  <74.51g vm-pool   vm-windows-7-root-1675851219-back            35.72                                  

Do we have a standard operating procedure for these situations that I missed?

There is a guide on that already but it covers only the case of sparsifying .img files.

I’d really appreciate some hints. Thank you in advance.

Try fstrim on the volume when mounted in Linux?