Obtaining the installer
The FreeBSD 11.0 installers can be found on the official FreeBSD site. Under the heading ‘FreeBSD 11.0-RELEASE’, select the architecture of the machine FreeBSD will be installed on. This will typically be ‘amd64’ or ‘i386’ which correspond to the 64-bit and 32-bit versions, respectively. The amd64 version can be installed on Intel processors as well! If you have a single board computer, installers are listed under ‘SD Card Images’. For the purposes of this guide we will choose amd64.
You’ll be given a choice of files to download.
FreeBSD-11.0-RELEASE-amd64-disc1.iso is a good choice for most use cases. Grab the dvd version if you need more features like a window manager. Additional features can always be downloaded later.
FreeBSD-11.0-RELEASE-amd64-memstick.img is meant for writing to USB flash drives. If the target system doesn’t have an optical drive, you might need this. The files ending in
.xz are compressed versions that you can grab to save bandwidth, but you’ll need to extract them once they’re downloaded.
Once the file has downloaded, the next step is to put it on the install media. If you’re using a disc, you’ll need to burn the .iso file to a CD or DVD. The .iso is also a good choice if FreeBSD is being installed in a virtual machine because it can be booted from that file. If you’re using a flash drive, you’ll need to write the .img file to it. This can be done with dd if you’re using macOS, Linux or a Unix derivative (like FreeBSD!) but you’ll need a third party program for Windows. Win32DiskImager is my favorite tool of choice.
After the install media has been created, insert it into the target machine and boot into the install media. If successful, you’ll see this screen:
Either wait for the autoboot or press enter to start the installer.
Press enter again to start the installer.
You’ll be prompted to select a language. If you’re using English, just press enter again to proceed.
Then enter a hostname for the system. This should be a descriptive name. For example, web1 might be good if you plan to use it for a web server.
The installer will start by asking which components should be installed. The system will be perfectly functional even if all options are deselected. You can keep the defaults (lib32 and ports) unless you’re very limited on disk space. These components can always be installed later
The disk partitioner will then start. Unless you have a specific reason, you should select “
The disks will be scanned and then you can set any ZFS configuration options.
If the system doesn’t have a lot of memory and you anticipate running out, you may want to change the swap size from its default. The swap file is also known as virtual memory or the page file and is what the system uses when it runs out of RAM.
Install to proceed.
Press enter again to select the default redundancy method, stripe unless you have more than one disk and want ZFS’ version of RAID. Read more about ZFS’s RAID-like features here.
Press spacebar on each disk to be included in the ZFS pool. If you only have one disk, you still have to select it. Then press enter to proceed.
You’ll be asked if you want to proceed again. Going ahead will completely wipe the disk(s) selected. Use the arrow keys to select YES then press enter.
The disk(s) will be formatted as ZFS and the install will proceed. The time it takes to install will depend on the disk’s speed.
When the install is complete you’ll be asked to set a root password. Because the root account is the all powerful administrative user, it should have a strong, unique password. Just make sure you don’t forget it!
After you set a password the installer will try to set up any connected network interfaces. You’ll be asked if you want to use IPv4 and/or IPv6, and how they should be configured. If you’re not sure what to do, enabling IPv4 and IPv6 with DHCP should be fine.
Even if you set DHCP, you’ll be asked if you want to change the DNS servers.
Next you’ll be asked to set the time zone, time, and date of the system. This is pretty self explanatory.
You’ll be prompted on which services should be started on boot.
I would select
ntpd in addition to the defaults of
dumpdev. The ntp daemon synchronizes the system’s clock to time servers on the internet. All computers’ clocks will drift over time and ntp keeps it unskewed.
If for some reason you’re installing FreeBSD on a laptop you should also select
powerd. These services can always be toggled later.
A new screen introduced in FreeBSD 11.0 is an easy way to toggle some common system hardening options. See this post for a more complete guide on FreeBSD system hardening. For most users, all of these options should be enabled. One of FreeBSD’s strengths is strong security – why not take advantage of all of its features?
You’ll then be asked if you want to add any users to the system. Because root should never be logged on directly, create at least one unprivileged account for daily use.
A screen where you can change any of the previously set options will appear. You can double check or change any install options before everything is committed. Select
Exit to proceed.
Finally, you’ll be asked if you want to open a shell to do any additional configuration. Navigate to
No to proceed.
Complete! Remove the disc or USB drive from the system and select
Reboot to restart the computer and begin using FreeBSD.