Before installing, it is important to remember that the FreeNAS® operating system must be installed on a separate device from the drive(s) that will hold the storage data. In other words, if you only have one disk drive you will be able to use the FreeNAS® graphical interface but won’t be able to store any data, which after all, is the whole point of a NAS system. If you are a home user who is experimenting with FreeNAS®, you can install FreeNAS® on an inexpensive USB thumb drive and use the computer’s disk(s) for storage.
This section describes the following:
FreeNAS® 9.3 can be downloaded from http://download.freenas.org/.
Note
FreeNAS® will only install to 64-bit hardware and the installer will not work on 32-bit hardware.
The download page contains the following types of files:
Each file has an associated sha256.txt file which should be used to verify the integrity of the downloaded file. The command you use to verify the checksum varies by operating system:
The value produced by running the command should match the value of the sha256.txt file.
Beginning with version 9.3, FreeNAS® must be installed using a menu-driven installer, as the ZFS boot partition is created during the installation. To perform an installation, download the .iso file and write it to either a CD or a USB stick.
To burn the .iso file to CD, use a CD burning utility.
The command which is used to burn the .iso file to a compact flash card or USB thumbdrive depends upon the operating system. This section demonstrates utilities for several operating systems.
Note
if you will be burning the installation file to a USB stick, you will need two USB slots, each with an inserted USB device, where one USB stick contains the installer and the other USB stick is selected to install into. When performing the installation, be sure to select the correct USB device to install to. In other words, you can not install FreeNAS® into the same USB stick that you boot the installer from. After installation, remove the USB stick containing the installer, and if necessary, configure the BIOS to boot from the remaining USB stick.
Once you have written the .iso file to the installation media, make sure the boot order in the BIOS is set to boot from that device and boot the system to start the installation.
On a FreeBSD or Linux system, the dd command can be used to write the .iso file to an inserted USB thumb drive or compact flash device. Example 2.2a demonstrates writing the image to the first USB device (/dev/da0) on a FreeBSD system. Substitute the filename of your .iso file and the device name representing the device to write to on your system.
Warning
The dd command is very powerful and can destroy any existing data on the specified device. Be very sure that you know the device name to write to and that you do not typo the device name when using dd! If you are uncomfortable using this command, write the .iso file to a CD instead.
Example 2.2a: Writing the .iso file to a USB Thumb Drive
dd if=FreeNAS-9.3-RELEASE-x64.iso of=/dev/da0 bs=64k
6117+0 records in
6117+0 records out
400883712 bytes transferred in 88.706398 secs (4519220 bytes/sec)
When using the dd command:
Insert the USB thumb drive and go to Launchpad ‣ Utilities ‣ Disk Utility. Unmount any mounted partitions on the USB thumb drive. Check that the USB thumb drive has only one partition, otherwise you will get partition table errors on boot. If needed, use Disk Utility to setup one partition on the USB drive; selecting “free space” when creating the partition works fine.
Next, determine the device name of the inserted USB thumb drive. From TERMINAL, navigate to your Desktop then type this command:
diskutil list
/dev/disk0
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *500.1 GB disk0
1: EFI 209.7 MB disk0s1
2: Apple_HFS Macintosh HD 499.2 GB disk0s2
3: Apple_Boot Recovery HD 650.0 MB disk0s3
/dev/disk1
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme *8.0 GB disk1
1: DOS_FAT_32 UNTITLED 8.0 GB disk1s1
This will show you which devices are available to the system. Locate your USB stick and record the path. If you are not sure which path is the correct one for the USB stick, remove the device, run the command again, and compare the difference. Once you are sure of the device name, navigate to the Desktop from TERMINAL, unmount the USB stick, and use the dd command to write the image to the USB stick. In Example 2.2b, the USB thumb drive is /dev/disk1. Substitute the name of your uncompressed file and the correct path to your USB thumb drive.
Example 2.2b: Using dd on an OS X System
diskutil unmountDisk /dev/disk1
Unmount of all volumes on disk1 was successful
dd if=FreeNAS-9.3-RELEASE-x64.iso of=/dev/disk1 bs=64k
Note
if you get the error “Resource busy” when you run the dd command, go to Applications ‣ Utilities ‣ Disk Utility, find your USB thumb drive, and click on its partitions to make sure all of them are unmounted. If you get the error “dd: /dev/disk1: Permission denied”, run the dd command by typing sudo dd if=FreeNAS-9.3-RELEASE-x64.iso of=/dev/disk1 bs=64k, which will prompt for your password.
The dd command will take some minutes to complete. Wait until you get a prompt back and a message that displays how long it took to write the image to the USB drive.
Windows users will need to download a utility that can create a USB bootable image from the .iso file.
This section will demonstrate how to use Win32DiskImager to burn the .iso file. When downloading Win32DiskImager, download the latest version that ends in -binary.zip and use 7-Zip to unzip its executable.
Once installed, launch Win32DiskImager and use its “browse” button to browse to the location of the .iso file. Insert a USB thumb drive and select its drive letter from the “Device” drop-down menu. Click the “Write” button and the image will be written to the USB thumb drive.
With the installation media inserted, boot the system. This should load the FreeNAS® installation’s GRUB menu shown in Figure 2.3a.
Figure 2.3a: FreeNAS® Grub Menu
Note
if the installer does not boot, check that the installation device is listed first in the boot order in the BIOS. When booting from a CD, some motherboards may require you to connect the CD device to SATA0 (the first connector) in order to boot from CD. If the installer stalls during bootup, double-check the SHA256 hash of the .iso file. If the hash does not match, re-download the file. If the hash is correct, try burning the CD again at a lower speed or try writing the file to a different USB stick.
Either wait for the menu to timeout or press Enter to boot into the installer. Once the media has finished booting, you will be presented with the console setup menu seen in Figure 2.3b.
Figure 2.3b: FreeNAS® Console Setup
Press Enter to select the default option of “1 Install/Upgrade”. The next menu, seen in Figure 2.3c, will list all available drives, including any inserted USB thumb drives which will begin with da. In this example, the user is performing a test installation using VirtualBox and has created a 8 GB virtual disk to hold the operating system.
Figure 2.3c: Selecting Which Drive to Install Into
Use your arrow keys to highlight the USB, compact flash device, or virtual disk to install into and press the spacebar to select it. If you wish to mirror the boot device, arrow to the second device and press spacebar to select it as well. After making your selections, press Enter. FreeNAS® will issue the warning seen in Figure 2.3d, reminding you to not install the operating system onto a drive that is meant for storage. Press Enter to advance to the screen shown in Figure 2.3f.
Figure 2.3d: FreeNAS® Installation Warning
Note
at this time, the installer does not check the size of the install media before attempting an installation. A minimum of a 4 GB device is required, but the install will appear to complete successfully on smaller devices, only to fail at boot. If a 4 GB USB drive fails to boot, try using a 8 GB USB drive instead.
The installer will recognize if a previous version of FreeNAS® 8.x or 9.x is already installed, and if so, will display the menu shown in Figure 2.3e. If the installer recognizes that a previous version of FreeNAS® is installed and you wish to overwrite the existing installation, arrow over to “Fresh Install” and press Enter twice to advance to the screen shown in Figure 2.3f.
Figure 2.3e: Performing a Fresh Install
The next screen, shown in Figure 2.3f, prompts for the root password which is used to log into the administrative graphical interface.
Figure 2.3f: Set the Root Password
Setting a password is mandatory and the password can not be blank. Since this password provides access to the administrative GUI, it should be a hard-to-guess password. Input the password, press the down arrow key, and confirm the password. Then press Enter to start the installation.
Note
for security reasons, the SSH service and root SSH logins are disabled by default. Unless these are set, the only way to access a shell as root is to gain physical access to the console menu or to access the web shell within the administrative GUI. This means that the FreeNAS® system should be kept physically secure and that the administrative GUI should be behind a properly configured firewall and protected by a secure password.
Once the installation is complete, you should see a message similar to Figure 2.3g.
Figure 2.3g: FreeNAS® Installation Complete
Press Enter to return to the first menu, seen in Figure 2.3a. Highlight “3 Reboot System” and press Enter. If booting from CD, remove the CDROM. As the system reboots, make sure that the device you installed to is listed as the first boot entry in the BIOS so that the system will boot from it. FreeNAS® should boot into the “Console Setup” menu described in Initial Configuration Wizard.
If the system does not boot into FreeNAS®, there are several things that you can check to resolve the situation.
First, check the system BIOS and see if there is an option to change the USB emulation from CD/DVD/floppy to hard drive. If it still will not boot, check to see if the card/drive is UDMA compliant.
If the system BIOS does not support EFI with BIOS emulation, see if it has an option to boot using legacy BIOS mode.
Some users have found that some brands of 4 GB USB sticks do not work as they are not really 4 GB in size, but changing to a 8 GB stick fixes the problem.
If you are writing the image to a compact flash card, make sure that it is MSDOS formatted.
If the system starts to boot but hangs with this repeated error message:
run_interrupt_driven_hooks: still waiting after 60 seconds for xpt_config
go into the system BIOS and see if there is an onboard device configuration for a 1394 Controller. If so, disable the device and try booting again.
If the system starts to boot but hangs at a mountroot> prompt, follow the instructions in Workaround/Semi-Fix for Mountroot Issues with 9.3.
If the burned image fails to boot and the image was burned using a Windows system, wipe the USB stick before trying a second burn using a utility such as Active@ KillDisk. Otherwise, the second burn attempt will fail as Windows does not understand the partition which was written from the image file. Be very careful that you specify the USB stick when using a wipe utility!
Beginning with version 9.3, FreeNAS® provides more flexibility for keeping the operating system up-to-date:
This section describes how to perform an upgrade to the next major release as well as how to update a 9.3 system with newer features between major releases.
Be aware of the following caveats before attempting an upgrade:
Before upgrading the operating system or applying a system update, perform the following steps:
To perform an upgrade using this method, download the .iso for the new release to the computer that will be used to prepare the installation media. Burn the downloaded .iso file to a CD or USB thumb drive using the instructions in Preparing the Media.
Insert the prepared media into the system and boot from it. Once the media has finished booting into the installation menu, press Enter to select the default option of “1 Install/Upgrade.” The installer will present a screen showing all available drives; select the device FreeNAS® is installed into and press Enter.
The installer will recognize that an earlier version of FreeNAS® is installed on the device and will present the message shown in Figure 2.5a.
Figure 2.5a: Upgrading a FreeNAS® Installation
Note
if you select to perform a “Fresh Install”, you will have to restore the backup of your configuration using System ‣ General ‣ Upload Config after you boot into the new operating system.
To perform an upgrade, press Enter to accept the default of “Upgrade Install”. Again, the installer will remind you that the operating system should be installed on a disk that is not used for storage. Press Enter to start the upgrade. Once the installer has finished unpacking the new image, you will see the menu shown in Figure 2.5b. The database file that is preserved and migrated contains your FreeNAS® configuration settings.
Figure 2.5b: FreeNAS® will Preserve and Migrate Settings
Press Enter and FreeNAS® will indicate that the upgrade is complete and that you should reboot. Press “OK”, highlight “3 Reboot System”, and press Enter to reboot the system. If booting from CD, remove the CDROM.
During the reboot there may be a conversion of the previous configuration database to the new version of the database. This happens during the “Applying database schema changes” line in the reboot cycle. This conversion can take a long time to finish so be patient and the boot should complete normally. If for some reason you end up with database errors but the graphical administrative interface is accessible, go to Settings ‣ General and use the “Upload Config” button to upload the configuration that you saved before you started the upgrade.
To perform an upgrade using this method, download the .txz file for the new release and its associated SHA256 hash to the computer that you use to access the FreeNAS® system. Then, go to System ‣ Update. Click the “Manual Update” button to open the screen shown in Figure 2.5c.
Figure 2.5c: Upgrading FreeNAS® From the GUI
Use the drop-down menu to select an existing volume to temporarily place the firmware file during the upgrade. Alternately, select “Memory device” to allow the system to create a temporary RAM disk to be used during the upgrade. After making your selection, click the “OK” button to see the screen shown in Figure 2.5d.
Figure 2.5d: Step 2 of 2
This screen again reminds you to backup your configuration before proceeding. If you have not yet, click the “click here” link.
Browse to the location of the downloaded .txz file, then paste its SHA256 sum.
When finished, click the “Apply Update” button to begin the upgrade progress. Behind the scenes, the following steps are occurring:
To update the system between releases, use System ‣ Update.
Warning
each update creates a boot environment and if the boot device does not have sufficient space to hold another boot environment, the upgrade will fail. If you need to create more space on the boot device, use System ‣ Boot to review your current boot environments and to delete the ones you no longer plan to boot into.
In the screen shown in Figure 2.5e, use the drop-down menu to select which “Train” you would like to track updates to.
Figure 2.5e: Checking for Updates
In this example, this system has the option to track FreeNAS-9.3-Nightlies, (the latest nightly build of 9.3 which may contain untested fixes), FreeNAS-9.3-STABLE (all new and tested features, drivers, and bug fixes since 9.3 was released), and FreeNAS-10-Nightlies (the latest, pre-alpha build of the upcoming 10 version). The administrator has selected to track the recommended FreeNAS-9.3-STABLE train. Click the hyperlink for “Train Descriptions” to read a brief description of each train.
To see if any updates are available, click the “Check Now” button. If any updates are available, they will be listed in a pop-up screen. Either click the “OK” button to apply the listed updates or the “Cancel” button to exit the screen containing the listing.
Note
some updates require a system reboot. You should ensure that no clients are currently connected to the FreeNAS® system and that no scrubs are currently in progress before applying an update.
If you choose to apply the updates, a progress bar will indicate the progress of downloading and installing the updates. Before the update process begins, FreeNAS® will automatically take a snapshot of the current operating system and add it to the boot menu. If the update requires a system reboot, the system will automatically be rebooted immediately after the update is applied.
If an update fails, an alert will be issued and the details will be written to /data/update.failed.
To return to a previous version of the operating system, you will need physical or IPMI access to the FreeNAS® console. Reboot the system and watch for the boot menu. In the example shown in Figure 2.5f, the first boot menu entry, FreeNAS (default), refers to the initial installation, before the update was applied. The second boot entry, FreeNAS-1415259326, refers to the current version of the operating system, after the update was applied. This second entry is highlighted and begins with a star, indicating that this is the environment the system will boot into, unless another entry is manually selected. Both entries include a date and timestamp, indicating when that boot environment was created.
Figure 2.5f: Boot Menu
To boot into the previous version of the operating system, use the up or down arrow to select it and press enter.
Should a boot device fail and the system no longer boots, don’t panic. The data is still on your disks and you still have a copy of your saved configuration. You can always:
Beginning with FreeNAS® 9.3, ZFS pools can be upgraded from the graphical administrative interface.
Before upgrading an existing ZFS pool, be aware of the following caveats first:
To perform the ZFS pool upgrade, go to Storage ‣ Volumes ‣ View Volumes and highlight the volume (ZFS pool) to upgrade. Click the “Upgrade” button as seen in Figure 2.5g.
Note
if the “Upgrade” button does not appear, the pool is already at the latest feature flags and does not need to be upgraded.
Figure 2.5g: Upgrading a ZFS Pool
The warning message will remind you that a pool upgrade is irreversible. Click “OK” to proceed with the upgrade.
The upgrade itself should only take a seconds and is non-disruptive. This means that you do not need to stop any sharing services in order to upgrade the pool. However, you should choose to upgrade when the pool is not being heavily used. The upgrade process will suspend I/O for a short period, but should be nearly instantaneous on a quiet pool.
FreeNAS® can be run inside a virtual environment for development, experimentation, and educational purposes. Please note that running FreeNAS® in production as a virtual machine is not recommended. If you decide to use FreeNAS® within a virtual environment, read this post first as it contains useful guidelines for minimizing the risk of losing your data.
In order to install or run FreeNAS® within a virtual environment, you will need to create a virtual machine that meets the following minimum requirements:
This section demonstrates how to create and access a virtual machine within the VirtualBox and VMware ESXi environments.
VirtualBox is an open source virtualization program originally created by Sun Microsystems. VirtualBox runs on Windows, BSD, Linux, Macintosh, and OpenSolaris. It can be configured to use a downloaded FreeNAS® .iso file, and makes a good testing environment for practicing configurations or learning how to use the features provided by FreeNAS®.
To create the virtual machine, start VirtualBox and click the “New” button, seen in Figure 2.6a, to start the new virtual machine wizard.
Figure 2.6a: Initial VirtualBox Screen
Click the “Next” button to see the screen in Figure 2.6b. Enter a name for the virtual machine, click the “Operating System” drop-down menu and select BSD, and select “FreeBSD (64-bit)” from the “Version” dropdown.
Figure 2.6b: Type in a Name and Select the Operating System for the New Virtual Machine
Click “Next” to see the screen in Figure 2.6c. The base memory size must be changed to at least 8192 MB. When finished, click “Next” to see the screen in Figure 2.6d.
Figure 2.6c: Select the Amount of Memory Reserved for the Virtual Machine
Figure 2.6d: Select Whether to Use an Existing or Create a New Virtual Hard Drive
Click “Create” to launch the “Create Virtual Hard Drive Wizard” shown in Figure 2.6e.
Figure 2.6e: Create New Virtual Hard Drive Wizard
Select “VDI” and click the “Next” button to see the screen in Figure 2.6f.
Figure 2.6f: Select the Storage Type for the Virtual Disk
You can now choose whether you want “Dynamically allocated” or “Fixed-size” storage. The first option uses disk space as needed until it reaches the maximum size that you will set in the next screen. The second option creates a disk the same size as that specified amount of disk space, whether it is used or not. Choose the first option if you are worried about disk space; otherwise, choose the second option as it allows VirtualBox to run slightly faster. Once you select “Next”, you will see the screen in Figure 2.6g.
Figure 2.6g: Select the File Name and Size of the Virtual Disk
This screen is used to set the size (or upper limit) of the virtual machine. Increase the default size to 8 GB. Use the folder icon to browse to a directory on disk with sufficient space to hold the virtual machine.
Once you make your selection and press “Next”, you will see a summary of your choices. Use the “Back” button to return to a previous screen if you need to change any values. Otherwise, click “Finish” to finish using the wizard. The virtual machine will be listed in the left frame, as seen in the example in Figure 2.6h.
Figure 2.6h: The New Virtual Machine
Next, create the virtual disk(s) to be used for storage. Click the “Storage” hyperlink in the right frame to access the storage screen seen in Figure 2.6i.
Figure 2.6i: The Storage Settings of the Virtual Machine
Click the “Add Attachment” button, select “Add Hard Disk” from the pop-up menu, then click the “Create New Disk” button. This will launch the Create New Virtual Hard Drive Wizard (seen in Figures 2.2e and 2.2f). Since this disk will be used for storage, create a size appropriate to your needs, making sure that it is at least 4 GB in size. If you wish to practice RAID configurations, create as many virtual disks as you need. You will be able to create 2 disks on the IDE controller. If you need additional disks, click the “Add Controller” button to create another controller to attach disks to.
Next, create the device for the installation media. Highlight the word “Empty”, then click the “CD” icon as seen in Figure 2.6j.
Figure 2.6j: Configuring the ISO Installation Media
Click “Choose a virtual CD/DVD disk file...” to browse to the location of the .iso file. Alternately, if you have burned the .iso to disk, select the detected “Host Drive”.
Depending upon the extensions available in your CPU, you may or may not be able to use the ISO. If you receive the error “your CPU does not support long mode” when you try to boot the ISO, your CPU either does not have the required extension or AMD-V/VT-x is disabled in the system BIOS.
Note
if you receive a kernel panic when booting into the ISO, stop the virtual machine. Then, go to System and check the box “Enable IO APIC”.
To configure the network adapter, go to Settings ‣ Network. In the “Attached to” drop-down menu select “Bridged Adapter”, then select the name of the physical interface from the “Name” drop-down menu. In the example shown in Figure 2.6k, the Intel Pro/1000 Ethernet card is attached to the network and has a device name of em0.
Figure 2.6k: Configuring a Bridged Adapter in VirtualBox
Once your configuration is complete, click the “Start” arrow and install FreeNAS® as described in Performing the Installation. Once FreeNAS® is installed, press “F12” to access the boot menu in order to select the primary hard disk as the boot option. You can permanently boot from disk by removing the “CD/DVD” device in “Storage” or by unchecking “CD/DVD-ROM” in the “Boot Order” section of “System”.
If you are considering using ESXi, read this post for an explanation of why iSCSI will be faster than NFS.
ESXi is is a bare-metal hypervisor architecture created by VMware Inc. Commercial and free versions of the VMware vSphere Hypervisor operating system (ESXi) are available from the VMware website. Once the operating system is installed on supported hardware, use a web browser to connect to its IP address. The welcome screen will provide a link to download the VMware vSphere client which is used to create and manage virtual machines.
Once the VMware vSphere client is installed, use it to connect to the ESXi server. To create a new virtual machine, click File ‣ New ‣ Virtual Machine. The New Virtual Machine Wizard will launch as seen in Figure 2.6l.
Figure 2.6l: New Virtual Machine Wizard
Click “Next” and input a name for the virtual machine. Click “Next” and highlight a datastore. An example is shown in Figure 2.6m. Click “Next”. In the screen shown in Figure 2.6n, click “Other” then select a FreeBSD architecture that matches the FreeNAS® architecture.
Figure 2.6m: Select a Datastore
Figure 2.6n: Select the Operating System
Click “Next” and create a virtual disk file of 8 GB to hold the FreeNAS® operating system, as shown in Figure 2.6o.
Figure 2.6o: Create a Disk for the Operating System
Click “Next” then “Finish”. Your virtual machine will be listed in the left frame. Right-click the virtual machine and select “Edit Settings” to access the screen shown in Figure 2.6p.
Figure 2.6p: Virtual Machine’s Settings
Increase the “Memory Configuration” to at least 8192 MB.
Under “CPUs”, make sure that only 1 virtual processor is listed, otherwise you will be unable to start any FreeNAS® services.
To create a storage disk, click Hard disk 1 ‣ Add. In the “Device Type” menu, highlight “Hard Disk” and click “Next”. Select “Create a new virtual disk” and click “Next”. In the screen shown in Figure 2.6q, select the size of the disk. If you would like the size to be dynamically allocated as needed, check the box “Allocate and commit space on demand (Thin Provisioning)”. Click “Next”, then “Next”, then “Finish” to create the disk. Repeat to create the amount of storage disks needed to meet your requirements.
Figure 2.6q: Creating a Storage Disk