OPENBSD-LINODE(7) Miscellaneous Information Manual OPENBSD-LINODE(7) NAME Installing OpenBSD on Linode – a guide DESCRIPTION I've been thinking for a while about moving my servers to Linode, and also about moving them to OpenBSD. I actually originally got into FreeBSD (and from there, OpenBSD) only because DigitalOcean started offering it as a “droplet” image. I've been running those servers fine for years, but now I prefer to run OpenBSD, and some recent DigitalOcean outages had me thinking about it more, so I'm giving it a shot. As an aside, running OpenBSD on DigitalOcean is not really a good option. It seems more awkward to install your own OS there, and if you do, I've heard that IPv6 won't work because they don't know how to run SLAAC. Also, now that I've used the Linode control panel and LISH a bit, DigitalOcean kind of feels like a toy in comparison. Here's what I did to install OpenBSD on Linode: 1. Create a Linode with the “Choose a Distribution” box blank. 2. Under the Storage tab, create a disk called “miniroot” of type raw with size 8 MB. This will hold the install image. 3. Create another disk called “root” of type raw using the remaining available storage. 4. Boot the Linode in rescue mode from the option in the three-dots menu next to “Power On”. Attach “miniroot” to /dev/sda. 5. Log into the LISH console and obtain the install image: curl -O https://cdn.openbsd.org/pub/OpenBSD/6.9/amd64/miniroot69.img dd if=miniroot69.img of=/dev/sda Power off the Linode. 6. Under the Configurations tab, create a configuration called “install” in full virtualization mode. Paravirtualization works fine once installed, but for some reason the installer can't see the root disk without full virtualization. Under boot settings, select direct disk. Attach “root” to /dev/sda, “miniroot” to /dev/sdb and set the root device to /dev/sdb. 7. Create a similar configuration called “boot” but using paravirtualiztion and without “miniroot” attached. Set the root device to /dev/sda. 8. Boot the “install” configuration, launch the LISH console and switch to Glish. It's possible to have the installer use serial console, but it requires entering commands at the boot prompt before the timeout, and I never managed it. If you do manage it, run: stty com0 9600 set tty com0 boot 9. Proceed through the OpenBSD installer. When asked to change the default console to com0, answer yes so that regular LISH will work. Power off the Linode. 10. Boot the “boot” configuration and log in to LISH. Since the installer configured networking in full virtualization, rename the file to the paravirtualized interface: mv /etc/hostname.em0 /etc/hostname.vio0 In order to get the right public IPv6 address, disable privacy extensions by changing the inet6 line of hostname.vio0 to: inet6 autoconf -temporary -soii 11. Bring networking up and run syspatch(8) since rc.firsttime couldn't do it: sh /etc/netstart syspatch 12. Reboot. I guess I'll be slowly moving things over to the new servers for the next little while. With any luck the next post here will not say FreeBSD in its header! SEE ALSO I learned the basic idea of how to do this from https://www.subgeniuskitty.com/notes/openbsd_on_linode. AUTHORS june Causal Agency September 26, 2021 Causal Agency