Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 6 Jan 1999 13:09:43 -0800 (PST)
From:      Julian Elischer <julian@whistle.com>
To:        Robert Nordier <rnordier@nordier.com>
Cc:        Andreas Braukmann <braukmann@tse-online.de>, current@FreeBSD.ORG
Subject:   Re: Trouble booting from WinNT with new boot loader
Message-ID:  <Pine.BSF.3.95.990106130207.2734G-100000@current1.whistle.com>
In-Reply-To: <199901062055.WAA02578@ceia.nordier.com>

next in thread | previous in thread | raw e-mail | index | archive | help
This is exactly why at whistle we use the 2nd block of the first
disk to store this stuff. (see 'nextboot(8)')
the bootblocks on da0 load a default from da0-block1,
which specify:
da(1,........

I am thinking of adding code to actually make the 2nd block require to be
in it's own slice type (not 165) so that it is marked as being in-use
rather than using a 'free' block like we do now..

I've added a 4th slice below that shows what it would look like....
what do you think?

julian


On Wed, 6 Jan 1999, Robert Nordier wrote:

> Andreas Braukmann wrote:
>  
> > I'm having a quite similar problem, but I have to suppose that the
> > num_ide-thingie won't help.
> > My home-system purely scsi-based with two disks (2 x IBM DDRS 9 GB);
> > the disks are partitioned^h^h^h^h^h^h^h^h^h^h^hsliced like this:
> > 
> > 
> > :: paert# fdisk da0
> > :: ******* Working on device /dev/rda0 *******
> > [...]
> > :: Media sector size is 512
> > :: Warning: BIOS sector numbering starts with sector 1
> > :: Information from DOS bootblock is:
> > :: The data for partition 1 is:
> > :: sysid 6,(Primary 'big' DOS (> 32MB))
> > ::   start 63, size 1060227 (517 Meg), flag 80 (active)
> > ::        beg: cyl 0/ sector 1/ head 1;
> > ::        end: cyl 65/ sector 63/ head 254
> > :: The data for partition 2 is:
> > :: sysid 5,(Extended DOS)
> > ::     start 1060290, size 7405965 (3616 Meg), flag 0
> > ::         beg: cyl 66/ sector 1/ head 0;
> > ::         end: cyl 526/ sector 63/ head 254
> > :: The data for partition 3 is:
> > :: sysid 165,(FreeBSD/NetBSD/386BSD)
> > ::     start 8466255, size 9381960 (4581 Meg), flag 0
> > ::         beg: cyl 527/ sector 1/ head 0;
> > ::         end: cyl 1023/ sector 63/ head 254
 The data for partition 3 is:
 sysid 201,(FreeBSD bootspec)
     start 1, size 1 (0 Meg), flag 0
         beg: cyl 0/ sector 2/ head 0;
         end: cyl 0/ sector 2/ head 0
> > 
> > :: paert# fdisk da1
> > :: ******* Working on device /dev/rda1 *******
> > [...}
> > :: Media sector size is 512
> > :: Warning: BIOS sector numbering starts with sector 1
> > :: Information from DOS bootblock is:
> > :: The data for partition 1 is:
> > :: sysid 165,(FreeBSD/NetBSD/386BSD)
> > ::     start 63, size 12578832 (6142 Meg), flag 80 (active)
> > ::         beg: cyl 0/ sector 1/ head 1;
> > ::         end: cyl 782/ sector 63/ head 254
> > :: The data for partition 2 is:
> > :: sysid 5,(Extended DOS)
> > ::     start 12578895, size 3871665 (1890 Meg), flag 0
> > ::         beg: cyl 783/ sector 1/ head 0;
> > ::         end: cyl 1023/ sector 63/ head 254
> > 
> > ... and partitioned as:: paert# disklabel da0
> > :: #        size   offset    fstype   [fsize bsize bps/cpg]
> > ::   b:   786432  2097152      swap                        # (Cyl.  130*- 179*)
> > ::   c:  9381960        0    unused        0     0         # (Cyl.    0 - 583)
> > ::   e:  2097152        0    4.2BSD        0     0     0   # (Cyl.    0 - 130*)
> > ::   f:  6498376  2883584    4.2BSD        0     0     0   # (Cyl.  179*- 583*)
> > 
> > 
> > :: paert# disklabel da1
> > :: #        size   offset    fstype   [fsize bsize bps/cpg]
> > ::   a:   524288        0    4.2BSD        0     0     0   # (Cyl.    0 - 32*)
> > ::   b:   786432   524288      swap                        # (Cyl.   32*- 81*)
> > ::   c: 12578832        0    unused        0     0         # (Cyl.    0 - 782*)
> > ::   e:  2097152  1310720    4.2BSD        0     0     0   # (Cyl.   81*- 212*)
> > ::   f:  2097152  3407872    4.2BSD        0     0     0   # (Cyl.  212*- 342*)
> > ::   g:  7073808  5505024    4.2BSD        0     0     0   # (Cyl.  342*- 782*)
> > 
> > 
> > I'm used to boot the system by the NT BootLoader (since fbsdboot chokes
> > on vm86 ...). The (freebsd) root filesystem lives on da1s1a.
> > Both bsd-slices are disklabeled to the new blocks, too.
> > 
> > I made an entry in the NT boot.ini for the new fbsd bootblock and
> > the system boots. ... But the new boot block gives the warning
> > 'no ufs' first. It seems to me, that the boot-code just tries to make
> > use of the first partitions in the first found freebsd-slice (da0s3) 
> > for going on. (e.g. looking for /boot/* )
> > Since the da0s3b partition is a swap-partition, .... this approach
> > has to fail ...
> 
> The obvious approach seems to be to boot da1, but I assume you can't
> tell NT BootLoader to do that.
> 
> The trouble with a setup like this is that it's not compatible with
> default bootblock behavior, and there's also no place to put a
> /boot.config to change that behavior.
> 
> You could patch /sys/boot/i386/boot2/boot2.c to look for everything
> on da1, I guess.  But the basic problem seems to be that you're
> trying to boot from an unbootable disk.  (If the root filesystem
> is on da1, you need to boot da1 not da0.)
> 
> -- 
> Robert Nordier
> 
> To Unsubscribe: send mail to majordomo@FreeBSD.org
> with "unsubscribe freebsd-current" in the body of the message
> 


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.3.95.990106130207.2734G-100000>