OpenBSD 6.7 Upgrade Guide

This is an upgrade guide for OpenBSD 6.7 using bsd.rd. It assumes you have OpenBSD 6.6 or 6.7 installed and working networking. It can be used to repair OpenBSD 6.6 or 6.7.

NOTE: This guide is no substitute for reading the OpenBSD FAQ. In particular, you should read the 6.7 Upgrade Guide.

Check to see if you need to upgrade your OS. To find out your operating system version, type: uname -a. If it says OpenBSD 6.6 GENERIC#6 amd64, you need to upgrade to 6.7 using this guide. If it says OpenBSD 6.7 GENERIC.MP#98 amd64, you can follow this guide to repair your OS, or you can follow the Sysupgrade 6.8 or the Upgrade 6.8 guides to upgrade.

  1. Make sure to back up any files. Use dump and restore?.
  2. Make sure to notify all your users in advance that there will be downtime during the upgrade.
  3. You will need a way to view the serial console. If you are using VMM, you can view it using the serial console?. If you are using BuyVM, you should use VNC. Make sure to have the serial console open so you can interrupt the normal bootup process during the upgrade.
  4. First, download bsd.rd and the SHA256 signature file from an OpenBSD mirror.
  5. Verify the signature, replace /bsd.rd with the new bsd.rd, then reboot:
    $ ftp
    $ ftp
    $ signify -C -p /etc/signify/ -x SHA256.sig bsd.rd
    $ doas cp bsd.rd /bsd.rd
    $ doas shutdown -r now

    NOTE: You must type something within 3 seconds or else bootup will continue automatically. If bootup does happen automatically, login and reboot by typing doas shutdown -r now.
  6. At the serial console (either cu or VNC), before automatic bootup, type boot /bsd.rd.
  7. If you did everything correctly, you should see OpenBSD 6.7 (RAMDISK_CD) in the boot screen. If you see OpenBSD 6.6, you did not follow the above steps correctly.
  8. Type u for (U)pgrade. Upgrading will allow you to install OpenBSD 6.7. You can use this to either upgrade from 6.6 or to repair an existing 6.7 system.
  9. Press enter for vt220.
  10. To check which root disk, press ? for details. NOTE: Be careful to install to the correct disk.
  11. There is no probably need to force check clean non-root filesystems, so just press enter.
  12. You can get the base sets from cd (ISO), disk (such as USB flash drive), or http. For this tutorial, we will use http.
  13. For this tutorial, we will not use a proxy. Press enter for none.
  14. For the HTTP server, press ? to show a list of servers. Choose the one closest to your location.
  15. Leave the server directory as pub/OpenBSD/6.7/amd64 and press enter.
  16. Install all the sets. It is not possible to install missing sets using pkg_add?; you will be required to re-run the installer. So, we don't recommend skipping any sets. Missing sets may cause issues later.
  17. If downloading sets over http, make sure that the SHA256.sig file is verified.
  18. Press enter for done.
  19. Press enter to reboot.
  20. NOTE: If you booted from ISO, flash drive, or some other external install media, you will need to make sure that the bootloader boots from the proper hard disk. If you're using BuyVM, see the BuyVM User Guide for how to switch the default boot order.
  21. The system will automatically boot OpenBSD 6.7.
  22. You will see a list of patches that need to be installed and conf files that need to be updated.
  23. At this point, you can now use ssh? to log in.
  24. Make sure to read and fix any error messages that you may see.
  25. To check if installation succeeded:
    $ uname -a
    OpenBSD 6.7 GENERIC#179 amd64
  26. To check if you have the proper amount of RAM and number of cores, run top?.
  27. You will want to patch the system:
    $ doas syspatch
  28. Then, you'll want to run sysmerge to merge any configuration files:
    $ doas sysmerge
  29. Then, make sure to upgrade your packages:
    $ doas pkg_add -u
  30. You may optionally install any firmware by running fw_update?:
    $ doas fw_update -a
  31. This is not advised, however, because some of the firmware may be proprietary.
  32. You will want to reboot after installing patches:
    $ doas shutdown -r now