How to Limit System Restore Disk Space in Vista
Starting with Windows XP, Windows has incorporated the system restore mechanism that keeps track of changes and allows you to revert back to a previous configuration. If a program, driver or Windows update causes problems, you can simply undo the changes.
Needless to say that the system restore logic needs a lot of hard disk space. In general, with modern, large hard disks this is not a big deal. But if you upgraded an older system to Vista, or even Windows 7, you might want to limit the size that Windows uses for the system restore.
How to Find Out the Disk Space Used by the System Restore in Vista
The first thing you want to do is find out how much disk space is actually used by Vista for the system restore function. Once the disk space is used by system restore, it is not available for any other use.
Start a command prompt window with administrator rights. The simplest way to do this is to type CMD at the Start menu and press the Ctrl+Shift+Enter keys at the same time. If you have a command prompt icon on the desktop, you can also right-click that, and select Run as administrator in the popup menu.
You might see the UAC message, where you need to click Continue before the command prompt window opens.
At the command prompt, type the following command:
vssadmin list shadowstorage
The result of the command will show the currently used shadow copy storage space, as well as the allocated and maximum shadow copy storage space.
By default Windows Vista will use up to 15% of the hard disk size for the system restore function.
How to Change the System Restore Space
The next step is to actually reduce the amount of disk space Vista will use for the system restore. This can be done with the same command, but with different parameters.
The command syntax is as following:
vssadmin resize shadowstorage /for=C: /on=C: /maxsize=10GB
The command will show the successful execution of the command, after which you can close the command prompt window.
In this example I changed the system restore size on disk C, by limiting it to 10GB. The minimum size is 300MB, and if you omit the Maxsize parameter, there is no limit, Vista can use all free disk space for restore points. Not that we would want that!
And although the command parameters imply that it would be possible to create the system restore points for disk C on a different drive, this does not appear to be possible. You will receive the following error:
Error: The specific volume shadow copy storage association was not found.
Warning: Do keep in mind that when you reduce the maximum restore point size, you could be removing actual restore points. If the allocated shadow copy storage space is larger than the maximum size you specify, Vista needs to remove some restore points.
If you want to free up some disk space, you can also start by cleaning the older system restore points, which won’t change the maximum space used, but it will free up most of the current disk space used by restore points.