Features on Demand can be used to remove specific roles and features. By
cherry-picking which components reside on your server, you can save disk
space. In Hyper-V virtual machines, Features on Demand reduces the
footprint of a virtual machine—in some instances, removing particular
roles and features can reduce the size of a virtual machine by more than
one gigabyte.
This is one of my favorite features in Server 2012. I’m not quite
sure why Microsoft isn’t singing the praises of Features on Demand and
hitting administrators over the head repeatedly about how great it is,
instead of going on about Server Core install recommendations. Minimal
Server Interface is a far better and more flexible option than simply
going with a Server Core install if you don’t want the full GUI; it’s a
customized GUI that you pretty much design based on your management
needs.
Another big advantage in Server 2012 over previous server versions
is that in prior versions of Windows servers, you could disable server
roles and features, but the binary files for them remained on the server.
With Server 2012, however, these files are fully removable. Uninstalling
files associated with server roles and features is a state called
“disabled with payload removed.”
To remove these roles and features, you can use a PowerShell cmdlet.
For instance, to remove Windows Explorer, Internet Explorer, and all
dependent components, you can run the command:
Uninstall –WindowsFeatures Server-Gui-Shell –remove
Once you remove a role or disabled a feature with payload removed,
you can reinstall it. Reinstalling requires access to an
installation source (typically on the installation media). Use the
PowerShell command Install-Windows
Feature
with the –Source
parameter. If you don’t specify a source, Windows will attempt to download
the needed files using Windows Update.