Install FreeNAS in Hyper-V: Part 1 Basic Configuration

Posted April 8, 2010 by Patrick Kennedy in Software

To install FreeNAS in a Hyper-V virtual machine one needs to do some configuration of the virtual machine, just as one would with a physical machine. Allocating hardware resources is much easier in Hyper-V versus physical machines because you can do it remotely through screens instead of physically taking a box offline and installing hardware. This guide will show the basic Hyper-V virtual machine setup for installing FreeNAS, an open source NAS appliance based on FreeBSD.

Before you start this guide, make sure you have created a basic Hyper-V virtual machine. For the guide to making a generic virtual machine for FreeNAS, OpenFiler, OpenSolaris, Linux, and etc. see the guide here. Not to be repetative, but if you want to recreate the test system I am using:

  1. CPU: Intel Core i7 920
  2. Motherboard:  Supermicro X8ST3-F
  3. Memory: Patriot Viper 12GB DDR3 1600
  4. Case (1): Norco RPC-4020
  5. Case (2): Norco RPC-4220
  6. Drives: Seagate 7200rpm 1.5TB, Hitachi 7200rpm 2TB and 1TB, Western Digital Green 1.5TB
  7. Controller: Areca ARC-1680LP
  8. SAS Expanders: 2x HP SAS Expander
  9. NIC (additional): Intel Pro/1000 PT Quad
  10. Host OS: Windows Server 2008 R2 with Hyper-V installed

Now that the test configuration is laid out, here is how to take a Hyper-V virtual machine shell, configure the virtual machine, and get FreeNAS 64-bit to work using the LiveCD image.

1. Create a new network. From the Hyper-V Manager select Virtual Network Manager. Select a name for the virtual network (in this case FreeNAS2 as I already had a working FreeNAS virtual machine and associated virtual network). You can see that I configured this network as an external network and gave it its own gigabit Ethernet link on the Intel Pro/1000 PT Quad. Best practice is to name your virtual network accordingly for whatever VM will be using that network as it facilitates troubleshooting later on.

Create a Hyper-V Virtual Network

2. After this is done, it is time to start configuring the virtual machine. In the Hyper-V Manager, select the virtual machine you made (mine is called FreeNAS2 for this guide). Then click settings (highlighted in the screenshot below).

Enter Hyper-V Virtual Machine Settings

3. Next, select Add Hardware and Legacy Network Adapter. Sadly, FreeNAS does not like the standard Network Adapter that is the default adapter in Hyper-V.

Add a Hyper-V Virtual Adapter

4. Click on the added Legacy Network Adapter (highlighted in the left pane below). Select the previously created network to bind to the Legacy Network Adapter (FreeNAS2 in this case). If you want to set an IP you can do that manually or use DHCP to assign the VM an IP address.

Bind Legacy Network Adapter to Virtual Network

5. Next select the DVD drive on the IDE controller, specify that the OS is located in an image file, and navigate to that file. Click apply then OK to go back to the Hyper-V Manager.

Add FreeNAS LiveCD OS Disk

6. Make sure you again have the correct VM in the left pane. Click connect (so you can see what the VM is doing), then click start. These are all highlighted in the screenshot below.

Start the Hyper-V VM with FreeNAS Running

7. It will take a few seconds to boot but then say, Hello FreeNAS! Note, at this point FreeNAS is running off of the live CD image that was selected above. The next part of this guide will go through the initial setup of FreeNAS, but at this point, FreeNAS is up and running in the Hyper-V virtual machine.

FreeNAS (64-bit) running in a Hyper-V VM off of a LiveCD image

That concludes this guide. Next guide will of course be turning this LiveCD image FreeNAS implementation into a standalone Hyper-V virtual machine with FreeNAS 64-bit installed to a .vhd instead of running off of the LiveCD.

About the Author

Patrick Kennedy

Patrick has been running ServeTheHome since 2009 and covers a wide variety of home and small business IT topics. For his day job, Patrick is a management consultant focused in the technology industry and has worked with numerous large hardware and storage vendors in the Silicon Valley. The goal of STH is simply to help users find some information about basic server building blocks. If you have any helpful information please feel free to post on the forums.



    It keeps halting at “calcru: runtime went backwards from…. “. I’ve looked around on the internet but can’t find any relevant answers. Any ideas?

Leave a Response


Newly Reviewed
  • Pliant SanDisk Lightning SLC SAS Drives
  • 9.3
    Supermicro X10SRi-F Cover
  • ASUS Z9NA-D6 USB PCIe Spacing
  • Intel Xeon E5-2620 V2 v V3 Percentage
  • Intel RMM4_LITE
  • SanDisk Optimus SAS SSD