shockley.net

How to make a bootable OpenBSD CD

Categories: [Computing]

Note: this information is probably obsolete.

Okay, we've got the snapshot files. Now what? Next, we use mkisofs from cdrecord to create an ISO image. You can get cdrecord from http://cdrtools.sourceforge.net/private/cdrecord.html. It's also in the Ports collection. So, let's assume that you've got everything you want on the CD in C:\OpenBSD. The command you need to run is:

c:\isotools\mkisofs
 -v
 -r
 -T
 -J
 -V "OpenBSD-Current"
 -b C:/OpenBSD/2.8/i386/cdrom28.fs
 -c boot.catalog
 -o C:/OpenBSD/OpenBSD-Current.iso
 -x C:/OpenBSD/OpenBSD-Current.iso
 C:/OpenBSD/.

All that goes on one line, of course. To sum up the variable commands, -V is the volume label, -b is the boot image, -o is the output file, and -x is files to exclude (since I don't want to recursively include the image itself), and the final C:/OpenBSD indicates the directory where the files are. Note the Unix-style slashes. The file boot.catalog is created by mkisofs, so don't run around trying to find one.

Now that we've got the ISO image created, all we need to do is burn it on a CD. I use Easy CD Creator 4, but you can use cdrecord or any other ISO-capable CD burning program. These instructions use Unix-style programs that have been ported to Windows, so if you don't have a Windows machine laying around most everything should apply.

Update:

Jamyn Shanley wrote in with some additional helpful suggestions for making it work in Unix (in his case, FreeBSD 4.1). Apparently there were some issues with relative paths that made his instructions a little different:

mkisofs
 -v
 -r
 -l (added)
 -L (added)
 -T
 -J
 -V "OpenBSD-2.8"
 -A "OpenBSD v2.8-Release, Custom ISO, 12-03-2000." (added)
 -b i386/cdrom28.fs (changed)
 -c boot.catalog
 -o openbsd-i386-2.8.iso (changed)
 -x openbsd-i386-2.8.iso (changed)
 /www/openbsd/iso/2.8/

Pretty much everything stayed the same except for:

-l # I wanted to use long filenames
-L # Included any files starting with a dot, in case there were any .message files or anything like that. Probably not necessary though
-A # Added a note about the iso itself
-b # Changed absolute path to relative path. My iso is made from
/www/openbsd/iso/2.8 so I put "i386/cdrom29.fs" on there, which translates
to /www/openbsd/iso/2.8/i386/cdrom29.fs
-o # Same idea as above. My output file location is relative to where I'm
creating the image from, so the output is actually going to
/www/openbsd/iso/2.8/openbsd-i386-2.8.iso
-x # same as your instructions
/www/openbsd/iso/2.8/ # Where the files are I'm creating the iso from.

Hopefully, between these two sets of instructions you should be well on your way towards making a bootable CD for your OS.