I recently upgraded my firewall to OpenBSD 3.7, and used the FTP installation option for the first time. While it’s desirable to purchase the CDs to support the OpenBSD development effort, sometimes this isn’t always feasible (e.g., you need to show off OpenBSD to management before they will cut a PO). When these cases arise, you can use the FTP installation method to image a host with your favorite OpenBSD release.
To begin the FTP installation process, we will need to create a directory on the FTP server to hold the file sets for the architecture we are looking to install on:
mkdir openbsd && cd openbsd
wget -nd -v -r --passive-ftp ftp://ftp3.usa.openbsd.org/pub/OpenBSD/3.7/sparc64/
The wget command can then be used to grab the file sets from theFTP server, and place them in the directory we just created. Once the files finish downloading, the MD5 fingerprints should be verified against an authoritative source (the checksums are located in a file called MD5, which sits alongside the file sets for each architecture):
openssl md5 *
MD5(INSTALL.sparc64)= 77f8ffb9e7618708c8351e645710b7ca MD5(base37.tgz)= 84da8044537d745cb577c8a3ebbb0385 MD5(bootblk)= db2214f88889cd2ff74f7743001de405 MD5(bsd)= ff94500eb06dbacabe1bf04c6b83f8f2 MD5(bsd.rd)= 6b319564f60cf98a77d093295bf20c84 MD5(cd37.iso)= 46b8effbbd23523792395eb8eef81143 MD5(comp37.tgz)= 66546dfefada8bda3c3e07fdbe435be7 MD5(etc37.tgz)= 9b0111c4b80f54ec20b789efe67fb07f MD5(floppy37.fs)= a1fd13293b4053cad05b22886d0bb7d4 MD5(game37.tgz)= c6a3f8fc27ec761138bd040734cbd4d1 MD5(installboot)= 2e98e7c64657bc54a8b260066af2d34d MD5(man37.tgz)= 29af57a6eb3db0c5950ac72d2dc52989 MD5(miniroot37.fs)= 8e7e690fcde7e7149e977324ed9ea40e MD5(misc37.tgz)= 591a06763952ab10d3d805c187199c33 MD5(ofwboot)= ca90778048d85333ce18fd7a822071a3 MD5(ofwboot.net)= 4c5f251cb0c4f029f7201bcf2272d104 MD5(xbase37.tgz)= 32dac4dc4d20906287bad76e4b4afc92 MD5(xetc37.tgz)= 02961c5575b66b9acd555b21ed8f81ee MD5(xfont37.tgz)= 158c0ea06bc87f817ddc342f7f1e5343 MD5(xserv37.tgz)= cbf31af1a987f862177765386da282e2 MD5(xshare37.tgz)= b9c53ad427b79c9dd0521631ef725fc0
Once the binaries are validated, you need to create a boot CDROM from the cd37.iso image. You can also create a boot floppy using the floppy37.fs image, but CDROMs are cheap, and no one uses floppy disks anymore. :) The cd37.iso image contain a boot image with a platform specific kernel. This is used to bootstrap the installation, and invoke an installer which prompts for file system layouts, network interface configurations, file sets to install, and a root password.
When the installer prompts for the location of the file sets, pick “f” for FTP. The installer will promps for the IP address/hostname of the FTP server, the path to the file sets, and a username and password to access the server once you pick the [f]tp installation option. Once you fill in these values and hit enter, the installer grabs teh archives from the FTP server, uncompresses the archives, and extracts the archives to the file systems you created. After the archives are extracted, you will need to reboot the box. Once you login, you will be greeted with a shiny new OpenBSD 3.7 installation:
uname -a OpenBSD oscar 3.7 GENERIC#431 sparc64
The FTP installation takes less than 20 minutes and is extremely well thought out. Section 4 of the OpenBSD FAQ provides a thorough introduction to the installation process, and describes each of the available installation method. I highly recommend ordering CDROMs from the OpenBSD website ( I was impatient, and didn’t want to wait for mine to arrive). This helps ensure OpenBSD gets new features, and the developers are rewarded for their hard work.
The following references were used while writing this article: