Enabling Data Deduplication in Windows 8.1

There are several posts about enabling Data Deduplication in Windows 8 out there. I recently upgraded my Windows 8 laptop to 8.1, and did of course want Deduplication enabled after the upgrade as well.
Of course this is not supported in any way, but it is a very nice way to save some precious disk space on your lab machines.

The process is basically the same as in Windows 8, the only difference is that you of course need to use the cab files from Windows Server 2012 R2.

If you don’t have a 2012 R2 box nearby, I’ve uploaded a copy of the cab-files my SkyDrive (http://sdrv.ms/1aZsWgk) so you alternatively can get them from there, if you dare. (NO WARRANTIES! :))
Otherwise you should look after the following files on a Server 2012 R2 machine:
Microsoft-Windows-Dedup-Package~31bf3856ad364e35~amd64~en-US~6.3.9600.16384.cab
Microsoft-Windows-Dedup-Package~31bf3856ad364e35~amd64~~6.3.9600.16384.cab
Microsoft-Windows-FileServer-Package~31bf3856ad364e35~amd64~en-US~6.3.9600.16384.cab
Microsoft-Windows-FileServer-Package~31bf3856ad364e35~amd64~~6.3.9600.16384.cab
Microsoft-Windows-VdsInterop-Package~31bf3856ad364e35~amd64~en-US~6.3.9600.16384.cab
Microsoft-Windows-VdsInterop-Package~31bf3856ad364e35~amd64~~6.3.9600.16384.cab

After you’ve extracted the files from your 2012 R2 box (or downloaded them from my SkyDrive), go ahead and run the commands as below:

dism /online /add-package /packagepath:Microsoft-Windows-VdsInterop-Package~31bf3856ad364e35~amd64~~6.3.9600.16384.cab /packagepath:Microsoft-Windows-VdsInterop-Package~31bf3856ad364e35~amd64~en-US~6.3.9600.16384.cab  /packagepath:Microsoft-Windows-FileServer-Package~31bf3856ad364e35~amd64~~6.3.9600.16384.cab /packagepath:Microsoft-Windows-FileServer-Package~31bf3856ad364e35~amd64~en-US~6.3.9600.16384.cab  /packagepath:Microsoft-Windows-Dedup-Package~31bf3856ad364e35~amd64~~6.3.9600.16384.cab /packagepath:Microsoft-Windows-Dedup-Package~31bf3856ad364e35~amd64~en-US~6.3.9600.16384.cab

dism /online /enable-feature /featurename:Dedup-Core /all

If everything works as intended, you should now have Deduplication enabled on your 8.1 machine.
You can verify this in add/remove Windows features. (optionalfeatures.exe)
2013-09-23 19-57-13

To enable it for a specific volume, run the following command in an elevated PowerShell prompt:

Enable-DedupVolume -Volume D:
Set-DedupVolume -Volume D: -OptimizeInUseFiles

To force a Deduplication job, simply run the PowerShell command as below (deduplications runs well on open files now as well, as long as you’ve provided the “OptimizeInUseFiles”-switch…):

Start-DedupJob -Volume D: -Type Optimization
You can monitor your DedupJop with the cmdlet Get-DedupJob.

To verify that everything looks alright after the first job, you run the cmdlet:
Get-DedupVolume -Volume D:
Hopefully you will also end up with a nice deduplicated data volume as in my screenshots below:
2013-12-26 19-00-08
2013-09-23 19-18-00

Happy Deduplication!

/Johan

16 thoughts on “Enabling Data Deduplication in Windows 8.1

  1. Simon

    Hi!
    Thank you for this great article.
    Because I’d like to make all by myself – please provide any method to extract the cab files from Windows Server 2012 R2.
    Where to find it (install.wim or live system)?
    Thank you in advance!

    Reply
    1. daltondhcp Post author

      Hi Simon,
      Sorry for the extremely late reply. I’ve updated the post with the information you need, and yes, you find it on a live 2012 R2 box.

      //Johan

      Reply
      1. K_C

        Hi Johan,
        Simon asked the process by which you created these cab files using a Windows 2012 R2 installation. I’ve installed 2012 R2 and I couldn’t find any cab files. I did a little googling and found this:
        “There is no such thing as .cab files in the Windows 2012 installation media. You need to have enough knowledge to create these .cab files from the installation media source files using the makecab.exe utility.
        You need to mount the install.wim using dism.exe /mount-wim command and then create some ddf files to direct makecab.exe which files and dirs to include in the cab making process. You need to know exactly which files to include and how to include them.”

        Did I just miss it? Did you post somewhere how you completed this process? I’d love to give creating these files on my own a try.

  2. Jan Schotsmans

    When I install the files, it gives errors on 2 of them with the dism command, yet everything works just fine.

    Would seem you don’t actually need all of these files to get dedup to work.

    Errors are on the fileserver and interop en-US files. Shows them to be only about 25% installed before erroring.

    Might just be some localisation packs my version of Win8.1 doesn’t need.

    Reply
  3. Erick

    Please note that in case you extract the files on a long path name (i had d:\temporal\dism\cabs\win2012\chrome\downloadfiles\extracted\), the DISM operation will fail with a cryptic 0x80070003 error saying that it cannot open the .cab. Just move the folder with the .cab files to a shorter path (such as d:\mycabs) and it will work.

    Reply
  4. ~C

    Thanks for the info!! Question – Does this feature get updated via windows update? or is there a way to update them easily (hopefully without uninstalling/reinstalling the feature…)

    Reply
    1. Johan Dahlbom Post author

      Hi,
      Thanks for reading!

      Since the feature is built for Windows Server 2012 R2, updates in relation to this feature will not be targeted to Windows 8.1. So in the event that an update with a feature update or bug fix comes out, you will have to uninstall/reinstall the feature on the client.

      Reply
  5. K_C

    Hi Johan,
    Simon asked the process by which you created these cab files using a Windows 2012 R2 installation. I’ve installed 2012 R2 and I couldn’t find any cab files. I did a little googling and found this:
    “There is no such thing as .cab files in the Windows 2012 installation media. You need to have enough knowledge to create these .cab files from the installation media source files using the makecab.exe utility.
    You need to mount the install.wim using dism.exe /mount-wim command and then create some ddf files to direct makecab.exe which files and dirs to include in the cab making process. You need to know exactly which files to include and how to include them.”

    Did I just miss it? Did you post somewhere how you completed this process? I’d love to give creating these files on my own a try.

    Reply
    1. Andreas Lindahl

      Just copy the files from a live installation of Windows Server 2012 R2. The files are located at C:\Windows\servicing\Packages. This is by far the easiest way to get the files. Or use the download link in the post 🙂

      Reply
      1. K_C

        You know, I found files there, but they aren’t .cab, files. For example, in C:\Windows\servicing\Packages, I see:
        Microsoft-Windows-Dedup-Package~31bf3856ad364e35~amd64~~6.3.9600.16384.cat
        Microsoft-Windows-Dedup-Package~31bf3856ad364e35~amd64~en-US~6.3.9600.16384.cat
        Microsoft-Windows-Dedup-Package~31bf3856ad364e35~amd64~en-US~6.3.9600.16384.mum
        Microsoft-Windows-Dedup-Package~31bf3856ad364e35~amd64~~6.3.9600.16384.mum

        I downloaded the CAB files from a post to compare them, they don’t seem to be the same. If I just drop the mum and cat files in I wonder if that would work… I’m going to try just dropping those in and see if the features appear, there is an XML too… I wonder if it’s a manifest I’d have to modify. Hmmm.

      2. K_C

        Oh, also, call my paranoid but I dislike system files of the web. Although, in this case it’s more curiosity on my part on how this was accomplished, who knows what other features I might like to play with in Windows 8.1 that there might not be a post giving me the cab files for. I really appreciate the help though!!

  6. Pingback: Unsupported hero – Enable Deduplication in Windows 10 Technical Preview | Tailspintoys – 365lab.net

Leave a comment