Date: Wed, 11 Nov 1998 12:33:50 -0800 From: Mike Smith <mike@smith.net.au> To: Kevin Street <street@iname.com> Cc: current@FreeBSD.ORG Subject: Re: boot loader problems with mix of wd and da Message-ID: <199811112033.MAA04864@dingo.cdrom.com> In-Reply-To: Your message of "Sat, 31 Oct 1998 14:07:54 EST." <13883.24586.614752.970999@kstreet.interlog.com>
next in thread | previous in thread | raw e-mail | index | archive | help
> I have some difficulties using the new boot blocks and loader in some > configurations. I have a backup copy of my root partition on another > drive that causes the loader some problems. > > kernel is aout > disks are wd0, wd1, da0, da1 (removable) > > I boot through Partition Magic's Boot Manager which lives on wd0. > The normal root is on wd1s2a. The backup root is on da0s2a. > I've done (after a Nov 10 make world): > disklabel -B -b /boot/boot1 -s /boot/boot2 wd1 > disklabel -B -b /boot/boot1 -s /boot/boot2 da0 > > The normal boot through wd1 is fine. > > If I want to boot my backup root on da0 then the results vary: > > 1) If I don't have a /boot.config on da0 then it autoboots into /boot/loader, > currdev is set to disk3s2. It finds /boot/boot.conf ok, loads the kernel > but the kernel boot fails with "changing root device to da2s2a". > (there is no da2). This is the same as the old problem that required you to prefix a BIOS unit number offset to the 'sd' in the old loader. You need to explicitly set $rootdev: set rootdev=da0s2a > 2) If I do have a /boot.config on da0 with: > 2:da(0,a)/boot/loader > Then it finds and loads the loader, but currdev is set to disk1s2 so it > can't find /boot/boot.conf or anything else. disk1s2 would actually be the > Boot Manager on wd0. If I manually change currdev to disk3s2, then I can > load the kernel but boot fails as above. This is not the right way to do it; the BIOS unit numbers get all screwed up. > 3) If I interrupt the loading of /boot/loader and instead type in: > 2:da(0,a)kernel > Then everything is fine. The kernel boot succeeds and correctly does > "changing root device to da0s2a". (The kernel is compiled with root on > wd1s2a since that's its normal spot). I suspect this won't work if I > go to an elf kernel since I need to use /boot/loader for elf, right? > > So, why is currdev set differently in case 1 and case 2? Because you've supplied the '2', obviously enough. > Why does /boot/loader confuse the kernel into thinking there's a da2 on > which it might find root? Because you haven't told it not to. -- \\ Sometimes you're ahead, \\ Mike Smith \\ sometimes you're behind. \\ mike@smith.net.au \\ The race is long, and in the \\ msmith@freebsd.org \\ end it's only with yourself. \\ msmith@cdrom.com 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?199811112033.MAA04864>