flashrd is an OpenBSD installer tailored for flash-backed devices that have at least 1Gb of flash and 128Mb of RAM. Here's the project's homepage.
Download the flashrd binary images.
Backup the existing flash cards using dd.
dd the new flashrd images to the existing flash cards.
Mount the flash cards, boot into single user mode, or boot the flash card using qemu, then modify /etc/ttys as follows:
19c19 < tty00 "/usr/libexec/getty std.9600" unknown off --- > tty00 "/usr/libexec/getty std.9600" vt220 on secure
Add this to /flash/etc/boot.conf: (/flash is on /dev/wd0a)
set timeout 5 stty com0 9600 set tty com0
Plug the flash cards into the existing devices, boot as follows:
boot> set tty com0 switching console to com0 >> OpenBSD/i386 BOOT 3.02 boot> boot booting hd0a:/bsd: 10707316+1055248 [52+360656+344597]=0xbe4014 entry point at 0x200120
To boot the older flash images, "boot -s" and then "/stand/rc" or "sh /etc/rc". If you need to use the network, remember to do "pfctl -d".
Once you have a serial console on the new image, copy /etc/hostname.*, /etc/ssh/*key*, and /root/.ssh/authorized_keys to the new image from the old image. Upon reboot you should be able to log in.
Files to copy from /etc:
hosts x dhcpd.conf x resolv.conf x myname x rc.conf.local x pf.conf x localtime x snmpd.conf x rtadvd.conf x hostname.* master.passwd x ntpd.conf x passwd x ttys x sysctl.conf x mygate x dnsmasq.conf x
Packages to install:
export PKG_PATH=ftp://ftp.openbsd.org/pub/OpenBSD/4.7/packages/i386/ pkg_add -v dnsmasq lsof curl bash iperf isc-dhcp-server net-snmp ngrep bwm-ng