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

Re: Grub question...



"Larry 'Daffy' Daffner" <vizzie@mail.airmail.net> writes:

> I do hve a small bit of cleverness though - making a GRUB floppy with
> an MSDOS filesystem on it. It took a little bit of nosing around, but
> it wasn't too bad. I then use that to put a kernel on, so I can boot
> up a kernel off the floppy and use a Zip drive (id 5) as the root FS,
> just for emergencies. :) Email me if you want the gory details :)

It's not that difficult.  (I usually use a raw GRUB disk and boot with
a kernel and root off of the hard drive.)

Sorry about not updating the package, I'm trying to decide how to
handle upgrades, because it will change the stage2 file.  (Hence the
boot sector needs to be reinstalled.)

My current idea:

 * make grubinst more flexible, so the user can specify stage1, stage2,
   menu file, and install location.

 * store the command line for "grubinst" somewhere, so the install
   script can do it automatically next time.

Some extra twists:

I have patches to get the GRUB build to generate e2fs_stage1_5 and
fat_stage1_5, they are a little big though (just over 8k).

Basically, this means that if the user has more than 16 heads/track,
he has the option to install stage1 and stage1_5 on a partition and
can change the stage2 file.  I'm not sure if this is useful or not,
though.  (The stage1_5 stuff gives grub the ability to read the
filesystems when looking for the stage2 files.)

Unfortunately, the stage1_5 stuff doesn't seem to work with floppies
(too big, I think).  So for a boot floppy we would have to put a stage2
on it and make sure the stage1 has a proper blocklist.


My current ideas for an install program:

  grubinst [options] stage1file stage2file device [menu file]

With checks and warnings for screwing stuff up, backups of boot blocks
to /boot (like lilo), and for options I'm thinking:

  --quiet    don't ask for confirmation
  --save     save defaults to /etc/grub.conf
  --15       special 1_5 mode (installs stage2 after boot block, if possible)
  --force    Override some sanity checks

The tenative format of /etc/grub.conf is a shell script that does the
install, this should make it fairly flexible.  (I hate having both
/etc/grub.conf and /boot/grub/menu.lst, but I want to track the
standard GRUB as much as possible.)

Also, of course, a preinstall script that moves the old stage2 out of
the way, so the system isn't rendered unbootable.

Any comments?  ETA is a few weeks, I'm also planning on writing linux
specific documentation and putting it up at:

   http://www.cps.msu.edu/~dunham/grub/grub.html

but there isn't much there yet.


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: