When I defrag and then analyze, defragmenter tells me over and over
again that I need to defrag? Why would it do that?
I’m assuming what you mean is that you’ve defragged, and then
immediately thereafter run the analysis again only to have it tell you
that “this volume should be defragmented”, even though that’s exactly
what you’ve just done.
I can think of a couple of reasons.
Become a Patron of Ask Leo! and go ad-free!
The first reason is simply lack of disk space.
Defragging typically works simply by moving files around on your
disk. In a nutshell, if a file is physically spread out in 15 different
places on the hard disk, the defragger just looks for a large unused
space on the disk that’s big enough to hold the entire file, and moves
it there. Repeat that over and over again for all the files on your
hard disk, and you’re defragged.
Now, naturally, that’s an over simplification. For example, the
defragger can also make choices on which files to move around first, so
that it can create bigger contiguous unused spaces for the bigger
fragmented files. The defragger may also take into account the physical
location of files on the disk and not just make the files contiguous,
but move them all so that they’re near each other, which means that the
disk doesn’t need to work as hard when it moves from one file to the
files around on your disk.”
But ultimately defragging boils down to copying fragmented files
into areas of the disk that are big enough to hold the entire file
without fragmenting it.
So, what if you have a file on your hard disk that is fragmented but
there’s not enough contiguous free space on the disk to make a copy of
it? (And remember, it’s not just about free space, it’s about free space
that is contiguous; free space that has unfragmented portions
that are large enough to hold the file in question.)
That file can’t be defragged.
And if you have a lot of files that can’t be defragged?
It’ll look like your hard disk still needs defragging, even after
the defragging tool made its best effort to do so.
The second reason is really very much like the first, with the added
complexity of files that cannot be defragged by normal defragging
In particular, your Windows paging or swap file cannot be defragged
by the Windows defragger, nor can the system registry files. That means
that if over time as these have grown they become fragmented, they will
contribute to what the defragger sees as the “need” for defragging, but
they cannot be part of the solution since they can’t be defragged.
So, what can you do?
To state the obvious: free up some disk space and try again. Try
emptying your browser cache, or even looking into what’s taking up
space and making decisions to move, archive or delete data to make
Typically, with more room, a defrag will be much happier.
And in all honesty, doing nothing is also an option. Even though
your defragger might report that your drive should still be defragged,
if you’ve just done so then there’s nothing wrong with ignoring the
second report. Technically you might suffer a minor performance loss,
but in most cases the loss isn’t noticeable in the least, and the
effort of cleaning up and getting the defragger to stop complaining
simply isn’t worth it.
And a third option is to use a different defragging tool. There’s
definitely some magic involved in the approaches to defragging, and
some tools do a much better job of defragging in a low-space situation.
But as you might guess, this is also something I don’t consider to be
worth the expense to address.
And finally, specifically for those system files that can’t be
defragged by “normal” defragging tools, look into PageDefrag, a free tool from
Microsoft and Sysinternals that will defrag those files on reboot,
before Windows has been loaded.