Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 10 Jul 1999 07:20:08 -0500
From:      Paul Keusemann <pkeusem@visi.com>
To:        freebsd-questions@FreeBSD.ORG
Cc:        glewis@ares.maths.adelaide.edu.au
Subject:   Re: boot/loader problem -- currdev is not boot disk
Message-ID:  <19990710072007.A2560@isis.visi.com>
In-Reply-To: <199907100343.NAA05627@ares.maths.adelaide.edu.au>; from Greg Lewis on Sat, Jul 10, 1999 at 01:13:32PM %2B0930
References:  <19990709093649.A15301@isis.visi.com> <199907100343.NAA05627@ares.maths.adelaide.edu.au>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Jul 10, 1999 at 01:13:32PM +0930, Greg Lewis wrote:
> > Is there any way to specify the current drive when starting /boot/loader?
> 
> Do you actually want to set the current drive?  From your description it
> sounds like root_dev_unit is more along the lines of the variable you want 
> to set.  I can't be 100% sure on that, but it might be worth a try.
> 

Yep, I have to set root_disk_unit=1 (I assume that's what you mean, I'm
not setting rootdev) in my /boot/loader.rc, but the loader can't find
the loader.rc file or the kernel until I set currdev=disk2s1a.  Here's
what I've got in /boot.config:

	1:sd(0,a)/boot/loader

and /boot/loader.rc:

	load /kernel
	load -t userconfig_script /kernel.config
	set root_disk_unit=1

When I let the machine autoboot, it goes through the primary and secondary
boot phases just fine.  In the third stage, I get the following:

	Booting [kernel]
	Can't load 'kernel'

	Type ? for a list of commands, 'help' for more detailed help.
	disk1s1a:>

If I then run the following commands:

	disk1s1a:> set currdev=disk2s1a:
	disk2s1a:> include /boot/loader.rc
	disk2s1a:> boot

The kernel and my config file load and the kernel boots successfully.
So you're right about setting root_disk_unit, but I can't get that
far in an autoboot.

> > I've got a system with one IDE drive and two SCSI controllers, one Adaptec
> > 1542 and one Adaptec 2940.  I'm trying to boot off of the first disk
> > on the ISA controller which the bios sees first but the boot loader and
> > kernel see second, i.e.  when the boot loader starts, it thinks currdev
> > is the first disk on the 2940 which does not have a FreeBSD partition on it.
> > 
> > I can boot manually by setting the current drive after the boot loader is
> > running.  What I'm looking for is a way to tell the boot loader that the
> > current drive is disk1s1a.  Adding a line to /boot/loader.rc won't work
> > because the loader can't even find /boot/loader.rc, I need to set currdev
> > in order to read /boot/loader.rc.
> > 
> > This is what I've got so far:
> > 
> > 	Booteasy on the ide drive (wd0)
> > 	Booteasy on the first drive on the 1542 (sd1)
> > 	1:sd(0,a)/boot/loader in /boot.config on sd1
> > 
> > I can autoboot as far as the disk1s1a prompt from the boot loader.
> 
> What is the actual error message you get?
> 
> -- 
> Greg Lewis 				glewis@trc.adelaide.edu.au
> Computing Officer			+61 8 8303 5083
> Teletraffic Research Centre

-- 
Paul Keusemann			pkeusem@visi.com
4266 Joppa Court		(612) 894-7805
Savage, MN  55378


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




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19990710072007.A2560>