Upgrading OpenBSD 5.5 to 5.6

I will not be covering the installation of OpenBSD on the the PC Engines device today. Maybe at a later date. It wasn't that difficult after flashing the BIOS with a more recent ROM.

If you are attempting to follow this as a 'how-to' guide, please see the upgrade guide first.


This stackExhange post mentions using Screen to connect to serial ports. Screen is already provided as part of the base Mac OS so no need to build Minicom from MacPorts. : After intalling the Prolific driver the USB-to-serial port is accessable at /dev/tty.usbserial. Run sudo su - to get a root prompt on the Mac. Now run screen /dev/tty.usbserial 115200 to access the console of the APU1D.

At this point you should stop and make sure you have a recent backup of your system.

Before you boot in to the ramdisk to perform the upgrade, download the packages latest (in this case 5.6) from a mirror then verify the signatures.

-bash-4.3# ls
SHA256          bsd.mp          comp56.tgz      miniroot56.fs   xfont56.tgz
SHA256.sig      bsd.rd          etc56.tgz       pxeboot         xserv56.tgz
base56.tgz      cdboot          game56.tgz      xbase56.tgz     xshare56.tgz
bsd             cdbr            man56.tgz       xetc56.tgz      INSTALL.amd64
-bash-4.3# for i in $(ls); do /usr/bin/signify -C -p /etc/signify/openbsd-56-base.pub -x SHA256.sig $i ; done
Signature Verified
Signature Verified
base56.tgz: OK
Signature Verified
bsd: OK
Signature Verified
bsd.mp: OK
Signature Verified
bsd.rd: OK
Signature Verified
cdboot: OK
Signature Verified
cdbr: OK
Signature Verified
comp56.tgz: OK
Signature Verified
etc56.tgz: OK
Signature Verified
game56.tgz: OK
Signature Verified
man56.tgz: OK
Signature Verified
miniroot56.fs: OK
Signature Verified
pxeboot: OK
Signature Verified
xbase56.tgz: OK
Signature Verified
xetc56.tgz: OK
Signature Verified
xfont56.tgz: OK
Signature Verified
xserv56.tgz: OK
Signature Verified
xshare56.tgz: OK

Boot the system in to the ramdisk kernel.

boot hd0a:/bsd.rd
root on rd0a swap on rd0b dump on rd0b
erase ^?, werase ^W, kill ^U, intr ^C, status ^T

Welcome to the OpenBSD/amd64 5.5 installation program.
(I)nstall, (U)pgrade, (A)utoinstall or (S)hell? u

Press 'u' for upgrade.

At any prompt except password prompts you can escape to a shell by
typing '!'. Default answers are shown in []'s and are selected by
pressing RETURN.  You can exit this program at any time by pressing
Control-C, but this can leave your system in an inconsistent state.

Terminal type? [vt220] 
Available disks are: sd0 sd1.
Which disk is the root disk? ('?' for details) [sd0] 
Root filesystem? [sd0a] 
Checking root filesystem (fsck -fp /dev/sd0a)...OK.
Mounting root filesystem (mount -o ro /dev/sd0a /mnt)...OK.
DHCPDISCOVER on re0 - interval 3
DHCPDISCOVER on re0 - interval 6
DHCPOFFER from (00:01:5c:31:be:41)
DHCPACK from (00:01:5c:31:be:41)
bound to -- renewal in 123576 seconds.
Force checking of clean non-root filesystems? [no] 
fsck -p 126644d7a0758c41.d...OK.
/dev/sd0a (126644d7a0758c41.a) on /mnt type ffs (rw, local)
/dev/sd0d (126644d7a0758c41.d) on /mnt/scratch type ffs (rw, local, nodev, nosuid)

Let's upgrade the sets!
Location of sets? (disk http or 'done') [http] disk
Is the disk partition already mounted? [no] yes
Pathname to the sets? (or 'done') [5.6/amd64] /mnt/scratch/5.6/

Select sets by entering a set name, a file name pattern or 'all'. De-select
sets by prepending a '-' to the set name, file name pattern or 'all'. Selected
sets are labelled '[X]'.
    [X] bsd           [X] base56.tgz    [X] game56.tgz    [X] xfont56.tgz
    [X] bsd.rd        [X] comp56.tgz    [X] xbase56.tgz   [X] xserv56.tgz
    [X] bsd.mp        [X] man56.tgz     [X] xshare56.tgz
Set name(s)? (or 'abort' or 'done') [done]

Press enter/return

Verifying  SHA256.sig   100% |**************************|  2063       00:00    
Signature Verified
Verifying  bsd          100% |**************************| 11590 KB    00:00    
Verifying  bsd.rd       100% |**************************|  8878 KB    00:00    
Verifying  bsd.mp       100% |**************************| 11629 KB    00:00    
Verifying  base56.tgz   100% |**************************| 62169 KB    00:03    
Verifying  comp56.tgz   100% |**************************| 46843 KB    00:02    
Verifying  man56.tgz    100% |**************************|  8974 KB    00:00    
Verifying  game56.tgz   100% |**************************|  2722 KB    00:00    
Verifying  xbase56.tgz  100% |**************************| 16578 KB    00:00    
Verifying  xshare56.tgz 100% |**************************|  4449 KB    00:00    
Verifying  xfont56.tgz  100% |**************************| 38994 KB    00:01    
Verifying  xserv56.tgz  100% |**************************| 19366 KB    00:00    
Installing bsd          100% |**************************| 11590 KB    00:00    
Installing bsd.rd       100% |**************************|  8878 KB    00:00    
Installing bsd.mp       100% |**************************| 11629 KB    00:00    
Installing base56.tgz   100% |**************************| 62169 KB    00:13    
Installing comp56.tgz   100% |**************************| 46843 KB    00:12    
Installing man56.tgz    100% |**************************|  8974 KB    00:03    
Installing game56.tgz   100% |**************************|  2722 KB    00:00    
Installing xbase56.tgz  100% |**************************| 16578 KB    00:02    
Installing xshare56.tgz 100% |**************************|  4449 KB    00:04    
Installing xfont56.tgz  100% |**************************| 38994 KB    00:06    
Installing xserv56.tgz  100% |**************************| 19366 KB    00:02    
Location of sets? (disk http or 'done') [done]

Press enter/return

Making all device nodes...done.
Multiprocessor machine; using bsd.mp instead of bsd.
pwd_mkdb: warning, unknown root shell
pwd_mkdb: warning, unknown root shell
pwd_mkdb: warning, unknown root shell

CONGRATULATIONS! Your OpenBSD upgrade has been successfully completed!
To boot the new system, enter 'reboot' at the command prompt.
After rebooting, run sysmerge(8) to update your system configuration.
# reboot

After reboot I ran sysmerge -s /path/5.6/etc56.tgz to update /etc/ with changes in 5.6 release.