bug-grub
[Top][All Lists]
Advanced

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

Re: root device for linux when booting from eltorito-cd


From: Marco Gerards
Subject: Re: root device for linux when booting from eltorito-cd
Date: Wed, 22 Sep 2004 12:24:27 +0000
User-agent: Gnus/5.1006 (Gnus v5.10.6) Emacs/21.3 (gnu/linux)

Armin Herbert <address@hidden> writes:

> root (cd)                     # works of course
> kernel /vmlinuz root=(cd)     # (cd) is substituted with the device name
>
> It would be very _very_ nice if this worked, because if it did, I 
> wouldn't need to build an initrd. :-)

This just can't work.  GRUB does not know about linux devices and how
they correspond to the GRUB devices.  And this is simply impossible to
implement with the way GRUB currently works.

GRUB just gets the BIOS device number.  It is in fact a meaningless
number that can just be used to access the hardware via the BIOS.  It
does not tell where the device can be found physically and that is
what Linux wants to know.

Adding to that, the arguments passed to Linux are not parsed in any
way.  GRUB is a unified bootloader and does not care much about the OS
loaded.  I think it would be bad to implement this for linux only if
it were possible in some really tricky way, IMHO

Perhaps this can be implemented for GRUB 2 in some way, at least in
the far future.  To make that possible GRUB should have IDE/ATAPI
drivers.  Using a script device and partition numbers can be
translated to those of the Hurd(/GNU Mach), Linux, *BSD, etc.  In that
case you will have something like:

DEV=(ide0,4)
devtolinuxdev $DEV LINUXDEV
linux ${DEV}/vmlinuz root=${LINUXDEV}

The disadvantage is that this is IDE only.  To support SCSI this could
work, but you will need SCSI drivers in GRUB.  But it would be cool if
this would be possible.  I will implement this some day (although I am
not the maintainer so I can not tell if this will make it into GRUB).

--
Marco





reply via email to

[Prev in Thread] Current Thread [Next in Thread]