FreeBSD on Linode

AWS is too much of a hack to get FreeBSD running on it, plus they almost tripled the cost one month ($6/mo micro-instance to $16/mo), so bye-bye AWS EC.  Linode is a straight-forward VPS provider that gives options for install/run on direct disk images so you can build out your own FreeBSD server. 

Create your Linode system in the location you prefer.

Under Settings -> Shutdown Watchdog -> Disable Lassie (We will be manually booting/rebooting during the install, and we don't want Lassie booting things up)

In the dashboard, under Disks, create two disk images:

First Image:
   Label: Installer
   Type:  Raw
   Size:  1024MB
Second Image:
   Label: FreeBSD
   Type:  Raw
   Size:  (Rest of available space)

Also in the dashboard, create two configuration profiles:

First Profile:
   Label: Installer
   Kernel: Direct Disk
   /dev/sda: FreeBSD
   /dev/sdb: Installer
   root/boot device: Standard /dev/sdb
   (Set all Filesystem/Boot Helpers to "No")

Second Profile:
   Label: FreeBSD
   Kernel: Direct Disk
   /dev/sda: FreeBSD
   root/boot device: Standard /dev/sda
   (Set all Filesystem/Boot Helpers to "No")

Under the "Rescue" tab, set /dev/sda to "Installer" and Reboot into Rescue Mode, then use Lish via SSH from the Remote Access tab to access a console.

In the ssh console, use curl to pull the disk image and then write it to disk with dd:
curl ftp://ftp.freebsd.org/pub/FreeBSD/releases/amd64/amd64/ISO-IMAGES/11.0/FreeBSD-11.0-RELEASE-amd64-memstick.img | dd of=/dev/sda

Once the command finishes writing the installer image, you can close your ssh session (or leave it open to see it reboot).

Under the main Dashboard, click the Reboot button with the Installer profile selected.  Under Remote Access then use Glish to bring up a graphical console for the FreeBSD Installer.

At this point it is a normal FreeBSD install, note that the disk to install to is da0, the installer image is located on da1.  Use DHCP/SLAAC for the network configuration.

Once the install is complete, before rebooting it will ask if you'd like to drop to command-line to make any final configuration changes.  Do that and add the following lines to /boot/loader.conf:

 boot_multicons="YES"
 boot_serial="YES"
 comconsole_speed="115200"
 console="comconsole,vidconsole"

This will allow Lish/Glish to work.  Once you have saved /boot/loader.conf you can go back under Dashboard and click the "Reboot" with the FreeBSD profile selected.  You should now be able to SSH to your new FreeBSD installed system, or you can open up Glish to get a console.