[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: creating ram disk and other micro installs????

taproot420 <taproot420_(_at_)_myrealbox_(_dot_)_com> writes:
> Message-ID: <3DCEFC83_(_dot_)_8020108_(_at_)_myrealbox_(_dot_)_com>
> Date: Sun, 10 Nov 2002 18:40:35 -0600
> From: taproot420 <taproot420_(_at_)_myrealbox_(_dot_)_com>
> User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20020823 Netscape/7.0
> X-Accept-Language: en-us, en
> MIME-Version: 1.0
> To: misc_(_at_)_openbsd_(_dot_)_org
> Subject: creating ram disk and other micro installs????
> Content-Type: text/plain; charset=us-ascii; format=flowed
> Content-Transfer-Encoding: 8bit
> X-Spam-Level: **
> X-Loop: misc_(_at_)_openbsd_(_dot_)_org
> Precedence: list
> Sender: owner-misc_(_at_)_openbsd_(_dot_)_org
> I am looking for information that gives instructions, details and maybe 
> some decent examples on how to create OpenBSD RAM DISK systems that can 
> boot and run off a CD like PicoBSD. I would like to do the latter but 
> with OpenBSD as oppose to Picso which uses FreeBSD. What i am looking to 
> achieve is creating a custom micro version of OpenBSD that will boot 
> from a cdrom, load to and run from a slice of ram. emBSD used to do this 
> but have disappeared.
> I am also interested in creating micro versions that can run from 
> CF-cards, and flash media such as the USB micro drives below. 
> http://www.tigerdirect.com/applications/SearchTools/item-details.asp?sku=L61-3176
> As always, Thanks in advance and have a great evening.

Get openbsd source, and look at /usr/src/distrib .  There's a whole bunch
of stuff there concerned with building kernels that once booted (from
cd-rom or whatever) load and run from a ramdisk.  It should be fairly
self-explanatory; most of the real complexity there comes from supporting
X different configurations for Y different platforms, and making runtime
code that will fit in the available space on various sorts of
istribution media.  I think the only piece that's missing is
instructions on how to use mkhybrid to make bootable ISO images for
most architectures.  If you purchase openbsd CD's, read the man page
for "mkhybrid", and poke through how the CD's are constructed, you
should be able to reproduce this information.  Alternatively, if you
get stuck you can ask here.

For i386, I used something like this:
	mkhybrid -o /var/tmp/image1.raw \
	-a -T -l -r -D -L -J -V "OPENBSD31" -P $PUBLISHER -p $PREPARER \
	-A "OpenBSD 3.1" -b 3.1/i386/cdrom31.fs -c 3.1/i386/boot.catalog

It is also supposed to be possible to specify a small arbitrary sized
"hard disk" image with EL Torito bootable CDs.  "mkhybrid" doesn't even
hint at this possibility, but I finally succeeded (today!) in finding
the "El Torito Bootable CDROM Format Specification," which is
remarkably hard to find despite being "freely" available.  So you'll
want to remember this:
Rumour has it that this is named after the restaurant in which the
various design authors met and designed.  At a quick glance, besides
"hard disk" emulation, there's also "no disk" emulation.  In any event,
if you want to squeeze more stuff into an i386 boot CD than will fit on
a regular 1.44M floppy, this *should* be doable given relatively simple
cleverness - modulo real world bios weirdness.  I'm pretty sure I have
a laptop at home that won't boot from 2.88M CD images, presumably
because the bios doesn't support 2.88M floppies.

				-Marcus Watts