Install Windows Server 2008 R2 or Windows 7 on USB stick

by Marin Franković on 9 June, 2010

There is a huge interest in methods for installing Windows Server 2008 R2 or Windows 7 on USB stick. Bare in mind that USB stick are slower than disks and that performance will suffer. These methods are unsupported by Microsoft!

This article was taken from my friends Robert blog with his permission. Minor errors have been corrected.

ARTICLE:

Microsoft released a document on TechNet few months ago, explaining how to install Windows Hyper-V Server 2008 R2 to USB stick. This configuration is supported only for OEM’s and only if you have permanently installed USB stick. If you want to know how to do it, please visit: http://technet.microsoft.com/en-us/library/ee731893(WS.10).aspx. There is also a tool to automate the process. You can find it on MSDN: http://code.msdn.microsoft.com/BootHVSR2FromUSB.

The question I usually hear from my students is: “Is it possible to install Windows Server 2008 R2 this way”. The answer to this question is: “Yes it is”. But you have to know that this is not supported or advised to do by Microsoft.


The process is exactly the same as with Windows Hyper-V Server 2008 R2, so please follow the instructions on Microsoft TechNet site. You will however need to do some additional modifications (if you want to avoid blue screen).

  1. When you create fixed size vhd file, let it be at least 10GB in size! 12GB is highly recommended (if you want to have enough place for updates etc.)
  2. USB stick should be at least 16 GB in size – minimum system requirements for foundation server is 10 GB, and for Standard is 32GB. I installed Windows Server 2008 R2 standard edition to 12GB vhd file with no problems
  3. If you are using automated tool found here, it will probably hang at the end. Then please, manually repeat steps 5 and 6 found in the TechNet document.
  4. Before step 7, please do the following:
  • Open registry editor, select HKLM, click on file/load Hive, navigate to disk R:\windows\system32\config (the drive you mounted vhd from USB stick), and open SYSTEM. Give it some name, like: Hyper-V.
  • Open hyper-V sub key (or whatever name you entered in previous dialog box)  under HKLM, open ControlSet001/Control. Edit BootDriverFlags value and enter 4.

BootDriverFlags

  • Open hyper-V sub key (or whatever name you entered in previous dialog box)  under HKLM, open ControlSet001/Control/PnP. Edit PollBootPartitionTimeout and enter 30000 (Decimal)

PollBootPartitionTimeout

  • Now you ready to dismount VHD (step 7 in original documentation) and ready to boot you newly created syspreped installation of Windows Server 2008 R2.

Be aware that you have to boot from USB stick (change it in your BIOS or pres F9, or F8, or whatever shortcut is used on your computer to pop up boot devices screen).
Also be aware that some steps could take a looooooot’s of time (it took about 3 hours to finish sysprep process on my machine with Hyper-V server, and just around 40 minutes with Windows Server 2008 R2).
After this slow process Windows server will work like a baby – it boots in 35 seconds on HP Compaq 6710b from Flash Voyager GT Corsair 16GB USB.

When I answered this question to my students the second question was: “Is it possible to do this with windows 7?”. 
The answer is: “Please try and let me know ;-) ” 
The process is the same, and it’s working with Windows 7 to.

{ 9 comments… read them below or add one }