Why there is a difference in the space free/space used shown by Drive Properties, and selecting all the Files/Folders on a Drive.
The space shown as used by a drive by right clicking the drive and clicking
Properties will
always show more space used than highlighting all folders does (unless there is a problem with the drive of course).
When selecting all the files then doing a right click - Properties, you will only be shown the total for the files and folders
your account has permission to view. Files and folders you don't have permission for won't be included, like the
System Volume Information folder where Restore points are stored.
You also won't see space used by the NTFS MetaData files, or by any files that have
Alternate
Data
Streams (ADS), or, on Vista/Win7, space used for Shadow Storage, aka Previous Versions. Vista/Win7 Basic and Home still create previous versions, even if you don't have access to them as in the Ultimate/Business versions.
System Restore/Shadow Copies can use up to 12% of the partition on XP, and 15% (or more, 15 is the default) on Vista/Win7. On a 1 TB (931 GiB) drive that's 111-140 GiB
When viewing the Drive properties, it shows the space free/used based on the Volume Bitmap file
$BITMAP, which shows everything, as permissions or hidden files aren't involved. So there will always be a discrepancy.
You can use one of these apps to see where space is being used. Folders you don't have access to will show a size of Zero. Some of the apps will flag them with an Access Denied message (TreeSizeFree does, WinDirStat doesn't).
Hard Drive space usage
WinDIRStat TreeSize Free Disk Detective JDiskReport
To see the amount of space used by System Restore and Shadow Copies on Vista/Win7:
Open an Administrative Command Prompt:
Click Start, type
cmd, press
CTRL+SHIFT+Enter (hold
CTRL+SHIFT until the UAC prompt appears)
Type
vssadmin List ShadowStorage and press
Enter
If you want to change the size allowed to be used, enter this to see the format to use:
vssadmin resize shadowstorage /?
XP can also use Shadow Storage, though that's not as common.
Open a Command Prompt:
Click Start, type
cmd, press
Enter
Type
vssadmin list shadows and press
Enter
You can use
chkdsk to see how much space some of the NTFS MetaData files are using. And to see if you have space allocated that shouldn't be.
Open a Command Prompt (Elevated Prompt on Vista), then type
chkdsk C:. It will run in read only mode, then give a summary like this one:
Code:
78148160 KB total disk space.
44055172 KB in 145290 files.
38636 KB in 9639 indexes. <-----
0 KB in bad sectors <-----
342908 KB in use by the system. <-----
65536 KB occupied by the log file.<-----
33711444 KB available on disk.
Note that if you do have drive errors,
chkdsk may exit without completing the check, and won't display a summary. In that case, or if it indicates other errors, run it with the
/F switch (
chkdsk /F C:), says yes to schedule the check at the next boot if needed, then reboot.
Total the indicated lines. In this example, 38,636+0+342,908+65,536=447,080 KiB=436.6 MiB=0.426 GiB, so nearly 1/2 GB of space that won't show when totaling the files. On some systems this could be 1-2 GiB or more.
The
$BadClus file will use a little bit of space (1-2 KiB), even if there are no bad sectors.
On this system I have 4,188,078 bytes used by ADS. It's only 4 MiB, but you may have more.
The following batch file will total up the space used in ADS on your system. You'll need to download
Streams from the SysInternals website, then edit the batch file to point to the folder you put the
streams.exe file into. You may also need to edit the
Set _Tab= line so there is a single TAB after the equals sign, as TABs often copy as several spaces instead of an actual TAB character.
It will check the C: drive. To check a different drive, edit the
Set _Search= line:
Code:
@Echo Off
SetLocal EnableDelayedExpansion
:: Note, the following line consists of a single tab after the = sign. If you copy this off the web, you may need to edit this line.
Set _Tab=
:: Edit the next line to point to the folder you copy the streams.exe file to.
:: You can download Streams from http://technet.microsoft.com/en-us/sysinternals/bb897440.aspx
Set _Stream=C:\Scripts\streams.exe
Set _Search=C:\
Set _Total=
For /F "tokens=4 skip=4 Delims=:%_Tab%" %%I In ('%_Stream% -s %_Search%') Do Set /A _Total=_Total+%%I
Echo Total Space used by Alternate Data Streams is %_Total% Bytes
Delete System Restore points:
Start | Accessories | System Tools | Disk Cleanup
For Vista/Win 7 only:
- Click on Files from all users on this computer
You'll get a UAC prompt if UAC is enabled.
Select the drive and click
OK
It will check the disk, then bring up the Cleanup dialog.
Click the
More Options tab
The bottom section allows you to delete all but the last System Restore point.
RollBackRx and possibly Norton GoBack, as well as other programs of this type, can also use a lot of disk space that is invisible in Windows Explorer.