[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Boot Linux from GRUB?



Philip Hands <phil@hands.com> writes:

> Hi,

> How do I get GRUB to boot a system where the Linux root partition is on the 
> second SCSI drive ?

>   [root] palm:/usr/doc/grub/docs# mount
>   /dev/sdb2 on / type ext2 (rw)
>   proc on /proc type proc (rw)
>   /dev/sdb3 on /usr type ext2 (rw)
>   /dev/sdb5 on /usr2 type ext2 (rw)
>   /dev/sda1 on /DOS type vfat (rw,umask=002,gid=35)

> So I think I want to be able to have stage1 on the dos disk (sda),
> with stage2 and Linux on sdb2.  Is that right ?

Yes, but I believe you need the "d" switch, see below.

> BTW, this currently works fine with lilo, and this lilo.conf:

> boot=/dev/sda
> root=/dev/sdb2
> compact
> install=/boot/boot.b
> map=/boot/map
> vga=normal
> delay=20
> image=/vmlinuz
>   label=Linux
>   read-only
> image=/vmlinuz.old
>   label=Linux-old
>   read-only
> other=/dev/sda1
>   label=DOS
>   table=/dev/sda

> I presume that there is something you can put in the grub
> configuration file, but I don't seem to be able to find any info
> about the syntax.

Once it gets to the configuration file, everything should be fine.
The trick is to get it to load stage2.  You should be able to do the
following at the grub prompt (boot grub from a floppy first):

install= (fd0)+1 d (sd0) (sd1,1)/boot/grub/stage2 0x8000 p /boot/grub/menu.lst

Here the "d" is the key element.  It tells it to really use (sd1,1)
instead of the booting disk.

Put stage1, stage2 in /boot/grub on sdb2.  Put the following in
"/boot/grub/sdb2/menu.lst":

#-- cut here

title=Linux
root=(sd1,1)
kernel=/vmlinuz root=/dev/sdb2

title=Linux old
root=(sd1,1)
kernel=/vmlinuz.old root=/dev/sdb2

title=Dos
chainloader= (sd0,0)+1

#-- cut here

(BTW, you can change the menu file and move kernels around without
reinstalling grub, as long as you don't move the "stage2" file.)

That should work, but please let me know, I never tried it myself.

If it doesn't work, you can always put "stage2" on the dos partition and
point the install command at it.  GRUB understands FAT partitions.

(To make a grub floppy, cat stage1 and stage2 together and dd it to
the floppy.)

I'll try to put together a FAQ, once I get some more experience with
this.  (I think I'll try to bring up the mklinux kernel on my Debian
system, just for fun.)

I'll also try to make an installation tool, before the next release.

The first package is easy, but upgrading will be difficult, because we
will be changing the stage2 file.  The solution is to make a more
generalized installation tool that takes a configuration information
from a file uses it to install GRUB - but it has to be able to handle
cases like yours.  I will start work on it in 2 or 3 weeks, (Christmas
break) maybe sooner.


Steve
dunham@cps.msu.edu




--
TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to
debian-devel-request@lists.debian.org . 
Trouble?  e-mail to templin@bucknell.edu .


Reply to: