[Top][All Lists]

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

Re: FreeBSD Boot Details

From: Werner Scheinast
Subject: Re: FreeBSD Boot Details
Date: Thu, 14 Jun 2012 22:47:57 +0200 (CEST)
User-agent: Alpine 2.00 (BSF 1167 2008-08-23)

Yesterday Jordan Uggla wrote:

> grub-install's --root-directory= option is for specifying the root
> directory, not the grub directory (it's also being deprecated by the
> new --boot-directory option).

Thanks. During most of my Linux years I used LILO, so I'm not too familiar
with GRUB.

> > /usr/local/sbin/grub-setup: error: /dev/ada0,3 appears to contain a ufs2
> > filesystem which isn't known to reserve space for DOS-style boot.
> > Installing GRUB there could result in FILESYSTEM DESTRUCTION if valuable
> > data is overwritten by grub-setup (--skip-fs-probe disables this check,
> > use at your own risk).
> You've completely misunderstood the error message, the error is about
> the UFS filesystem, not the BSD disklabel, and is properly solved by
> installing grub's boot sector to the MBR (which is where it should go
> no matter what disk label you're using).

What you say is partially wrong. Of course, I _can_ install GRUB into the
MBR, but I do not have to. Of course, this installation works and yields
no error, just because behind the MBR the whole first cylinder of the HD
is usually free and offers enough space for the stage 2 code.
(Sorry, I noticed that GRUB uses the numbering "stage 1", "stage 1.5" and
"stage 2" instead of 1,2,3, so I must say: ... for the stage 1.5 code.)

BUT: The MBR is originally not the place for a boot loader, only for a
boot manager, because every operating system may have its own particular
boot loader, that should actually reside locally in the partition: Stage 1
in the partition's boot sector, the rest ... somewhere else. Stage 1 does
not know about any file system, but in Linux it can directly access the
last stage's file via block addressing. In *BSD (or when installed in the
MBR) it uses a reserved space for the stage 1.5 code that can, in turn,
read from a file system - and the rest is no problem.

Here was my question: Is this difference between *BSD and Linux hard-coded
in GRUB or can I make GRUB behave like in Linux, without using stage 1.5?
This would give me a flexibility that FreeBSD's own boot loader does not

Best regards,

reply via email to

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