May 1st means new OpenBSD release, this year being no exception. One of the things that really amazes me in regards to the OpenBSD project is how precise the release schedule is. Though I should have gotten used to it over the years, it still strikes me as an example of how much a proper plan means for development and releasing on time. Regular, fixed release dates combined with the policy of small evolutionary steps means more than ten years, yet only two remote holes in the default install - it also means easy planning for those of us that have multiple hosts to upgrade.
Getting down to business, my use of RAIDFrame means the usual "make new kernel first" procedure. This time I'll try to add a few more details, though all the information needed for this procedure are in the OpenBSD FAQ and the excellent RAIDFrame How-To on Eclectica.ca. The procedure leading up to the point where the upgrade FAQ can be followed is quite simple, and only step 3 is different from the process for building new kernels listed in the upgrade FAQ:
Update the source tree
Build the kernel
Copy the kernel to the boot slices
Reboot
In more practical terms, this is the procedure:
$ cd /usr/src
$ sudo cvs up -rOPENBSD_4_1 -Pd
$ cd /usr/src/sys/arch/i386/conf
$ sudo config RAIDFRAME
$ cd ../compile/RAIDFRAME
$ sudo make clean && sudo make depend && sudo make
$ sudo cp /bsd /bsd.old
$ sudo cp bsd /bsd
$ cd /
$ sudo mount /dev/wd0a /mnt
$ sudo cp /mnt/bsd /mnt/bsd.old
$ sudo cp /bsd /mnt/bsd
$ sudo umount /mnt
$ sudo mount /dev/wd1a /mnt
$ sudo cp /mnt/bsd /mnt/bsd.old
$ sudo cp /bsd /mnt/bsd
$ sudo umount /mnt
This all assumes that there is a RAIDFRAME config file in the source tree from the last time the kernel was compiled and that the disk setup matches mine. What with the abundant use of sudo, one might wonder. Well, that's merely a principle of mine - don't use root when sudo is available. The risk of accidentally doing something stupid is less when you've got to think about what you're doing, and perhaps even enter a password every now and then. After these steps it's reboot time.
$ sudo reboot
Note to self: Keep fingers crossed, this server has no remote management.
After this it's a plain vanilla upgrade using the OpenBSD upgrade instructions for 4.1.
As usual, Wordpress was updated as well. Apart from a bit of trouble with path-changes for Courier-imap, it was smooth sailing. I really do love this OS.