Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

By default Windows Installer uses the largest drive for temporary storage, no matter if that's needed (meaning there would also be enough space on the system drive).

Taken from

During an administrative installation the installer sets ROOTDRIVE to the first connected network drive it finds that can be written to. If it is not an administrative installation, or if the installer can find no network drives, the installer sets ROOTDRIVE to the local drive that can be written to having the most free space.

Now my system drive is an SSD, my largest drive is a RAID, that spins down when it's not used. Remember the SSD as system drive? Everything is silent now! Until I install something and Windows Installer wakes up my RAID again just to put a small .tmp file on it... How can I prevent Windows Installer from using the largest drive as temporary storage? Can I maybe set some access rights to disallow the Windows Installer to write on my RAID drive? Any other ideas? Thank you!

share|improve this question
Sorry, but why do you care. THe comment about silent gave me the idea you spend 8 hours per day just installing software. Yes, this is annoying, but hey, it should be totally irrelevant because I install software every couple of weeks at most. – TomTom Mar 23 '12 at 16:13
1… this solution may work for you i think. – johnshen64 Mar 23 '12 at 16:17
1… Another possible option – Craig620 Mar 23 '12 at 20:27
@TomTom think about this: I have a virtual disk attached which is configured to be in growing mode because it virtually is 64TB in size (just for testing APIs etc.). It's neither located on a fast drive nor is there much space to grow, but every damn installer thinks this is a good place to copy gigabytes of data to. – springy76 Jul 23 '15 at 15:33

Editing these entries in the registry (to point to the desired drive, C: in this example) worked for me - Server 2012

"%SystemRoot%\System32\msiexec.exe" /i "%1" ROOTDRIVE=C:\ %*

"%SystemRoot%\System32\msiexec.exe" /f "%1" ROOTDRIVE=C:\ %*

"%SystemRoot%\System32\msiexec.exe" /x "%1" ROOTDRIVE=C:\ %*

"%SystemRoot%\System32\msiexec.exe" /p "%1" ROOTDRIVE=C:\ %*
share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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