View Single Post
  #40   Report Post  
Posted to uk.d-i-y
Paul[_46_] Paul[_46_] is offline
external usenet poster
 
Posts: 870
Default Finger twitching nervousness

T i m wrote:
On Thu, 29 Apr 2021 08:06:58 -0400, Paul


My Win10 VMs with dynamic VHD storage, at the moment.

W20H2.vhd 13,830,032,384 bytes

W10-1903.vhd 23,405,868,032 bytes

Just to give some idea of the size range I run.
I'm not compacting these every day, but they
do get a bit of fluffing now and then, to
free up a bit of disk space.


This Mac Mini with a 160GB HDD has 60GB for OSX and 100 for XP and
currently has checks 338MB free. ;-(

Cheers, T i m


You'll have to do your compaction on another machine
then. I sometimes move the VM files around the LAN
here, where there's more storage. To do compaction,
even when a compaction tool says "overwrite initial file",
it still needs double the space.

Like, to compact the 13GB file, it needs 13GB for the
original file, 13GB for the output file, then the original
can be deleted at some point in time. You need at least
as much slack as the file currently uses, to do compaction.

Some of the tools for this, use that sort of pessimistic
estimate. They know the compacted file cannot be any
bigger than 13GB, so they insist 13GB of slack be
present, before they start. Even if the output file
happened to end up at 10GB in size.

It is probably possible for a compaction tool to do
real live honest-to-goodness compaction-in-place,
but if the operation fails, you're screwed. This
is why a separate file handle is used for the output.
It's in case the power goes off or something
similarly naughty.

Anyway, there is a maintenance procedure, and
I've saved 200GB of wasted space on the VM partition,
just by house cleaning in this way. You can zero out
white space on both Windows and Linux, and both kinds
of machines benefit from compaction. (Compaction is
Guest OS agnostic. What counts, is zeroing out some
storage to make it happen, or make it possible. It
costs nothing to store zeros, using VM disk containers.)

Paul