Subject: Re: Boot Sequence, partitions, labels, etc.
To: None <port-i386@NetBSD.org>
From: der Mouse <mouse@Rodents.Montreal.QC.CA>
List: port-i386
Date: 07/15/2003 14:24:11
Mostly, I think you're right, but my understanding of the i386 boot
sequence is shaky at best, so you shouldn't count on that.  But...

> 6) As I understand it, the "a" partition must be root and root must
>    be on the "a" partition in order to boot.  Furthermore, the "a"
>    partition must start at the beginning of the netbsd slice.

This does not match my experience.  In particular, I have an i386
laptop with root on wd0e.  The boot partition is wd0a, and is at the
beginning of the NetBSD area, which is also the beginning of the disk;
I don't know how much of that I could change.  But root and boot do not
have to be the same.  I built a kernel with "config netbsd root on wd0e
type ffs" and put it in wd0a, and everything's happy.  I did this in
order to keep all the boot stuff early on the disk.  /netbsd is a
symlink to kernels/netbsd, and wd0a is mounted on /kernels.

"fdisk wd0" says

	NetBSD disklabel disk geometry:
	cylinders: 13424 heads: 15 sectors/track: 63 (945 sectors/cylinder)
	
	BIOS disk geometry:
	cylinders: 548 heads: 128 sectors/track: 63 (8064 sectors/cylinder)
	
	Partition table:
	0: <UNUSED>
	1: <UNUSED>
	2: <UNUSED>
	3: sysid 169 (NetBSD)
	    start 63, size 12685617 (6194 MB), flag 0x80
		beg: cylinder    0, head   1, sector  1
		end: cylinder  547, head 127, sector 63

and "disklabel wd0" says (in part)

	8 partitions:
	#        size   offset     fstype   [fsize bsize   cpg]
	  a:    65142       63     4.2BSD      512  4096    16   # (Cyl.    0*- 68)
	  b:   400680 12285000       swap                        # (Cyl. 13000 - 13423)
	  c: 12685617       63     unused        0     0         # (Cyl.    0*- 13423)
	  d: 12685680        0     unused        0     0         # (Cyl.    0 - 13423)
	  e: 12219795    65205     4.2BSD     1024  8192    80   # (Cyl.   69 - 12999)
	  f: 12285000        0     4.2BSD     1024  8192    64   # (Cyl.    0 - 12999)

and the relevant portion of my mount table is

	/dev/wd0e on / type ffs (local)
	/dev/wd0a on /kernels type ffs (local)

Now, this is a fairly old OS version.  But unless someone broke
something that used to work....

/~\ The ASCII				der Mouse
\ / Ribbon Campaign
 X  Against HTML	       mouse@rodents.montreal.qc.ca
/ \ Email!	     7D C8 61 52 5D E7 2D 39  4E F1 31 3E E8 B3 27 4B