I have a dedicated windows server 2003 with more than 3 millions of files, recently I created a new partition to separate the website files from the OS.

Later I reduced the site of the OS with some tools but I saw that the free space in the properties of the hard disk or in other HDD tools is 8 GB bigger than the size of all the files in the partition.

Looking at defrag logs I found that 8GB lost in the MFT!, but my surprise was that the MFT size in the D: partitions is just half size 3,1GB with 3.2 millions of records!!

"defrag c: /a /v" report

 Analysis Report                     

    Volume size                         = 76.30 GB
    Cluster size                        = 4 KB
    Used space                          = 17.57 GB
    Free space                          = 58.73 GB

Master File Table (MFT) fragmentation    
    Total MFT size                      = 7.74 GB
    MFT record count                    = 49,575
    Percent MFT in use                  = 0
    Total MFT fragments                 = 5

"defrag d: /a /v" report

Analysis Report

    Volume size                         = 372 GB
    Cluster size                        = 4 KB
    Used space                          = 317 GB
    Free space                          = 55.05 GB

Master File Table (MFT) fragmentation

    Total MFT size                      = 3.10 GB
    MFT record count                    = 3,247,737
    Percent MFT in use                  = 99
    Total MFT fragments                 = 3

Since is a dedicated server I'am not have physical access to the server, and this is a RAID1 software HDD, there is a way to clean, shrink or reduce the MFT? some one have experience with this kind of issues?

More Data: Chkdsk inform that in c: are 10.670.010 entries index processed

  • Have you actually run defrag? Files below a certain size are stored in the MFT. Defrag clears out deleted file entries in the directories. It also consolidates the MFT and can reduce the number of MFT fragments. MFT will always exist in a minimum of 3 fragments. Also, remember there will be slack space on all small files stored in the MFT. Apr 28 '13 at 4:37
  • yes defrag, chkdsk and the MFT keep the same size, I tried CCleaner wipe free space but hangs out, probably for the record count. Apr 28 '13 at 4:52
  • I have a batch script that move the hg_mig i386 and other folders inside windows, I reduced the space in that way to 3,2GB and the MFT keep in 7,8GB ... rememeber that it's a server 2003 Apr 28 '13 at 5:02
  • I have been testing and in a migration into a ESXi Hypervisor the MFT now is just 48 MB but in the dedicated server I can't find a solution May 5 '13 at 4:14
  • It is probably best to format and restore the volume if you want to resize the MFT or clear the MFT Zone. That way you can also set a reasonable size for the MFT Zone to avoid fragmentation. There is no online way to truncate the MFT file. Some defrag tools (like formerly available paragon total defrag) can do it by booting a rescue system and understanding the NTFS structure, but I think its so risky, so reformating the disk is easier.
    – eckes
    Jul 13 '17 at 0:13

After much search for similar/same issue I can say that there seems to be no solution to actually make $Mft smaller from inside Windows)

NTFS can reuse $Mft space, but not make it smaller once it has grown in size.

One thing I have not had the chance of testing yet is to use ntfsresize from Linux to try and minimize volume, and then extend it again.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.