[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: my thoughts about grub 2
From: |
Brendan Trotter |
Subject: |
Re: my thoughts about grub 2 |
Date: |
Thu, 19 Aug 2010 04:47:06 +0930 |
Hi,
On Thu, Aug 19, 2010 at 3:27 AM, Lennart Sorensen
<address@hidden> wrote:
> On Thu, Aug 19, 2010 at 03:18:53AM +0930, Brendan Trotter wrote:
>> Um, what?
>
> Well at least update-grub reads from /etc to generate the final config
> (which is still /boot/grub/grub.cfg, so it does go in /boot, but since
> it is generated (at least on my debian system), I don't consider it
> config anymore).
>
>> Imagine you've got 3 OSs: Hiaku, FreeDOS and ReactOS. Given that none
>> of these OSs normally have an "/etc" directory, which "/etc" should be
>> used to store GRUB's configuration?
>
> Well whichever one is responsible for generating the grub.cfg could
> store the files wherever is normal on that OS.
>
>> Perhaps you're saying that GRUB should be useless for anything that
>> isn't a Unix clone. In that case, imagine you've got 3 Unix clones. Of
>> course all of them want to automatically update their boot loader's
>> configuration when their kernel is updated, and they can't all share
>> the same "/etc". Does the user nominate one Unix clone as "working"
>> and let the other 2 OSs fail?
>
> I honestly don't personally care at all about any OS that isn't a unix
> clone anymore. Fortunately, I am only a grub user and not one of the
> developers. They seem to care.
You missed my point - it doesn't work for Unix clones either. You
could even have 2 copies of the exact same OS (something like Ubuntu)
installed on the same computer (in different partitions), and it fails
because both copies of the OS can't share the same "/etc". Any changes
to "/etc" done by one copy won't be seen by the other copy.
>> Using a separate partition for "/boot" that contains GRUB's
>> configuration for all OSs worked (at least in theory) because all OSs
>> that are installed could mount that partition without conflicts (as
>> long as you use a file system that all OSs understand).
>
> grub2 certainly has no issue with that. The default is to use grub.cfg
> in the /boot/grub directory.
>
>> I was talking about boot managers, not boot loaders.
>
> Why should there be a difference?
A few sayings come to mind:
- "Write programs that do one thing and do it well" (
http://en.wikipedia.org/wiki/Unix_philosophy )
- "jack of all trades" (
http://en.wikipedia.org/wiki/Jack_of_all_trades,_master_of_none )
A boot manager can be very simple to install and very simple to
configure. You should probably take a look at a few (I created a list
including URLs earlier). A few of them even claimed to have "single
click configuration" because they automatically detect installed OSs.
A pure boot loader (something without "boot manager" features, that is
designed specifically for one OS only) typically needs a single
command to install and doesn't need any configuration.
>> Conceptually you have a boot manager (to select which OS to boot) that
>> doesn't really need to care about any of the details for any
>> particular OS; plus a boot loader for each OS which is designed
>> specifically for that OS (and doesn't really need to care about other
>> file systems, etc). The difference between them often gets blurred
>> because feature creep is tempting (for example, a lot of the boot
>> managers I looked at earlier had features for creating/removing
>> partitions, even though this is normally done using separate utilities
>> designed for the purpose, like fdisk, parted, etc; and a lot of boot
>> loaders are probably able to chainload).
>>
>> GRUB is different in that it's intended to be a boot manager and a
>> boot loader for many OSs (and isn't primarily intended for a single
>> role); and I'd guess that is the reason it has to be too complex to be
>> "user friendly" for any specific role.
>
> Almost every x86 boot loader for linux has also been a boot manager
> (through chainloading if nothing else). Even the ntldr can do that. It
> seems to me that a boot manager is a stripped down boot loader that
> doens't do very much. Seems like a completely useless piece of software
> to me. I don't get it.
SYSLINUX is a collection of pure boot loaders. ELILO is a pure boot
loader too. In the old days so was loadlin. If I remember correctly,
early versions of Linux also had a boot loader built directly into the
kernel (but I think that was only for booting from floppies). GRUB,
LILO, SILO and PALO are a mixture. I can't think of any other Linux
loaders.
Cheers,
Brendan
- my thoughts about grub 2, Petr Topiarz, 2010/08/17
- Re: my thoughts about grub 2, BVK Chaitanya, 2010/08/17
- Re: my thoughts about grub 2, Brendan Trotter, 2010/08/18
- Re: my thoughts about grub 2, Lennart Sorensen, 2010/08/18
- Re: my thoughts about grub 2, Colin Watson, 2010/08/18
- Re: my thoughts about grub 2, Brendan Trotter, 2010/08/18
- Re: my thoughts about grub 2, Lennart Sorensen, 2010/08/18
- Re: my thoughts about grub 2,
Brendan Trotter <=
- Re: my thoughts about grub 2, Lennart Sorensen, 2010/08/18
- Re: my thoughts about grub 2, Seth Goldberg, 2010/08/18
- Re: my thoughts about grub 2, Lennart Sorensen, 2010/08/18
- Re: my thoughts about grub 2, Seth Goldberg, 2010/08/18
- Re: my thoughts about grub 2, Bruce Dubbs, 2010/08/18
- Re: my thoughts about grub 2, Lennart Sorensen, 2010/08/19