You are here: Home > Blog > Entries > Update OpenBSD on Soekris 5501

Update OpenBSD on Soekris 5501

After much delay, I'm updating my OpenBSD server from 5.4 to 6.1. It only took 3 years for me to get around to it. Unfortunately, the Soekrix 5501 cannot boot from USB like the 6501. You can set up a DHCP server and TFTP server and then boot via pxeboot and install that way, but what a pain. It's easier this way.

A. Log on to your existing OpenBSD system and download the install files:

$ mkdir /OpenBSD 6.1
$ cd /OpenBSD 6.1
$ ftp ftp://<>/pub/OpenBSD/6.1/i386/install61.fs

B: Insert a blank USB stick and copy the install61.fs:

$ dd if=install61.fs of=/dev/rsd0c bs=1m

C. Mount the USB stick:

$ mount -r -t ffs /dev/sd0a /mnt

D. Copy any files or configurations you want to keep to a USB stick or other media:

$ cd /mnt
$ mkdir /etc54
$ cp -R /etc/* /etc54/
$ mkdir /root54
$ cp -R /root/* /root54/
$ mkdir /htdocs
$ cp -R /var/www/htdocs/* /htdocs/

And so on.

Unmount and remove the USB stick and set aside.

$ umount /mnt

E. Now rename the existing boot and bsd.rd and copy the new boot and bsd.rd to the root of the disk.

$ cd /
$ mv bsd.rd bsd54.rd
$ mv boot boot54
$ cp /mnt/6.1/i386/bsd.rd /
$ cp /mnt/boot /

F. Set up a console connection to the Soekris box. I use a Mac running OS X, a Keyspan USB-to-serial adapter, and cu. Connect serial adapter to Mac and Soekris. I have already installed Keyspan software/drivers and identified device in /dev with ls /dev |grep tty. Open a terminal session and enter:

# sudo cu -s 19200 -l /dev/tty.USA19Hxd1P1.1 -t (where "x"is some integer).

G. After the connection is established, hit Return and log into the OpenBSD system. Once you're convinced the files are all there, reboot and boot from the new bed.rd:

$ reboot

H. As the reboot of the Soekris and then OpenBSD proceeds, the boot> prompt will be displayed for 5 seconds (unless you changed this or enabled fastboot). Hit the space bar to stop the booting process. At that prompt, then enter:

boot> boot bsd.rd (or b bsd.rd)

I. Now, after the dmesg is displayed, the usual "(I)nstall, (U)pgrade or (S)hell?" will appear. Check the dmesg and find out the device for the USD drive. On my Soekris Net5501, it is sd0. Since I have delayed more than 2 releases, a fresh install is needed. Go through the configuration. When you get to the question of the location of the install files, answer "disk" then "sd0" and you're good.

I promise to now keep on top of this with periodic patches against -stable or -current, probably with M Tier.

Next, migration from nginx to OpenBSD’s httpd for the web server.

Posted by Gordon, Feb. 1, 2017

© and the author

For comments, corrections, and addenda, email: gordon[AT]

Blog | Entries | Tags | Home