Subject: Re: Making a boot floppy
To: Andy Ruhl <acruhl@gmail.com>
From: Gary Thorpe <gathorpe79@yahoo.com>
List: netbsd-help
Date: 02/24/2005 13:10:54
 --- Andy Ruhl <acruhl@gmail.com> wrote: 
> I've reviewed the documentation both here:
> 
> 1.
>
http://www.netbsd.org/Documentation/kernel/#adding_a_kernel_to_a_boot_floppy
> 
> And here:
> 
> 2.
>
http://www.netbsd.org/guide/en/chap-misc.html#chap-misc-creating-bootfloppies
> 
> 1. just flat out doesn't seem to work:
> 
> # vnconfig -c vnd0 boot-big.fs
> # mount /dev/vnd0a /mnt
> mount_ffs: /dev/vnd0a on /mnt: incorrect super block
>
> 2. Doesn't really fit my needs either, because it's more than I want
> to do.
> 
> The i386 FAQ page doesn't have anything specific either.

The details are in installboot(8) with excerpts below.

> 
> All I want to do is boot the distribution I've installed on a USB
> disk
> via an install floppy. Sysinst detected the USB disk just fine and
> installed onto it. But now I can't boot it.
> 
> This is an older i386 machine that I've put a USB 2.0 card into and a
> USB hard drive.
> 
> I'm not sure if the bootloader is smart enough to be able to do this,
> I haven't read up on this yet. But what I would like to do is
> somethng
> like have a boot floppy with a boot loader that can boot a gzipped
> kernel that exists on that same floppy. That kernel then knows how to
> boot from the USB disk because I've built it that way.

The boot loader can do this without a problem, its juts getting it and
the kernel on the floopy that is your hurdle. The manual procedure to
make a boot floppy (taken from installboot(8)):

Create a bootable floppy disk with an FFSv1 file system for a small
cus-
     tom kernel (note: bigger kernels needing multiple disks are
handled with
     the ustarfs file system):
           newfs -s 1440k /dev/rfd0a
                 Note: Ignore the warnings that newfs(8) displays; it
can not
                 write a disklabel, which is not a problem for a floppy
disk.
           mount /dev/fd0a /mnt
           cp /usr/mdec/boot /mnt/boot
           gzip -9 < sys/arch/i386/compile/mykernel/netbsd >
/mnt/netbsd.gz
           umount /mnt
           installboot -v /dev/rfd0a /usr/mdec/bootxx_ffsv1

If your kernel requires multiple floppies, I have no idea how to make 
a ustarfs file system! Maybe pax or GNU tar can do this by specifying
the kernel/gzipped kernel as the file to archive and the floppy as the
target with multiple volumes?

> I was able to mount the install CD, but I can't really tell what it's
> trying to do. I kind of don't want to hack it though, I'd rather know
> how to build a boot floppy.
> 
> I can probably help write a doc about this if I knew how to pull it
> off technically.

Maybe the on-line guides should include the manual method (this is the
only way I have ever made a custom boot floppy).

Hope this helps.

______________________________________________________________________ 
Post your free ad now! http://personals.yahoo.ca